2012 408选择题错题

2012 408选择题错题
摘要由CSDN通过智能技术生成

2012 408选择题错题

1

对有n个结点,e条边且使用邻接表存储的有向图进行广度优先遍历,其算法时间复杂度是
邻接表存储我记不是很清了,再记一遍。
关于在图中,V表示顶点,是vetex的缩写,E表示边,是edge的缩写。

(1)空间复杂度

若G为无向图,则所需的存储空间为O(|V|+2|E|);若G为有向图,则所需的存储空间是O(|V|+|E|)。前者的倍数2是由于无向图中,每条边在邻接表中出现了两次。

(2)

对于稀疏图,采用邻接表表示将极大地节省存储空间。

(3)邻接表与邻接矩阵区别

在邻接表中,给定一顶点,能很容易的找出它的所有邻边,因为只需读取它的邻接表。在邻接矩阵中,相同的操作需要扫描一行,花费的时间为O(n)。但是,若要确定给定的两个顶点间是否存在边,则在邻接矩阵中可以立刻查到,而在邻接表中则需要在相应结点对应的边表中查找另一结点,效率较低。

(4)邻接表可以计算出度

在有向图的邻接表表示中,求一个给定节点的出度只需计算其邻接表的节点个数;但求其顶点的入度则需要遍历全部的邻接表。因此,也有人采用逆邻接表的存储方式来加速求解给定顶点的入度。‘

(5)邻接表不唯一

图的邻接表示并不唯一,因为在每个顶点对应的单链表中,各边结点的链接次序可以是任意的,它取决于建立邻接表的算法及边的输入次序。

广度优先搜索:(Breadth-First-Search,BFS)

(6)BFS算法的时间复杂度:

无论是邻接表还是邻接矩阵的存储方式,BFS算法都需要借助一个辅助队列Q,n个顶点均需入队一次,在最坏的情况下,空间复杂度为O(|V|)。
这里的辅助队列是为了实现逐层访问而设置的。
采用邻接表方式存储时,每个顶点均需搜索一次(或入队一次),故时间复杂度为O(|V|),搜索任一顶点的邻接点时,每条边至少访问一次,故时间复杂度为O(|E|),算法总的时间复杂度为O(|V|+|E|)。采用邻接矩阵存储方式时,查找每个顶点的邻接点所需的时间为O(|V|),故算法总的时间复杂度为O

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值