回顾一下暑期在Future camp学习的推荐算法(二)——基于图的随机游走算法

 

一、Day1 图的基础知识+SNAP初体验

 

1、图的基础知识

1.图的表示:

对于图G=(V, E),V为结点,E为边,一般可以用邻接链表和邻接矩阵表示。

邻接链表是每个结点相邻的节点链接而成链表的集合;邻接矩阵中用1表示结点之间相邻,用0表示不相邻。

 

图可以分为有向图和无向图,无向图如下所示:

(a)图为一个含有5个节点,7条边的无向图G;(b)为G的邻接链表表示;(c)为G的邻接矩阵表示

 

有向图如下所示:

(a)图为一个含有6个节点,8条边的有向图G;(b)为G的邻接链表表示;(c)为G的邻接矩阵表示

 

2.图的遍历--DFS(深度优先搜索)、BFS(广度优先搜索)

 

DFS:从图的某一个结点出发,找一个相邻的结点,以这个相邻的结点为准,再找下一个未被遍历的相邻的结点,直到结点没有未被遍历的相邻结点时,返回上一个结点,继续寻找未被遍历的相邻的结点,直到所有的结点被遍历。

 

BFS:从图的某一个结点出发,找距离该结点距离为1的结点,然后找与该结点距离为2的结点,直到遍历所有的结点。

 

3.二分图(Bipartite graph)

二分图简单来说是一种将节点分为两组,并且图中所有的边都跨越这两组的图。

具体定义为:把一个图的顶点划分为两个不相交集和,并且使得每一条边都分别连接这两个集合中的顶点。如果存在这样的划分,则此图为一个二分图。

 

2、配置python2.7环境+SNAP的初体验

<
  • 5
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值