早教吧 育儿知识 作业答案 考试题库 百科 知识分享
早教吧考试题库频道 --> 计算机类考试 -->软考中级 -->

●假设一个有n个顶点和e条弧的有向图用邻接表表示,则删除与某个顶点vi相关的所有弧的时间复杂度是

题目

●假设一个有n个顶点和e条弧的有向图用邻接表表示,则删除与某个顶点vi相关的所有弧的时间复杂度是 (55) 。

(55) A.O(n)

B.O(e)

C.O(n+e)

D.O(n*e)

参考答案
正确答案:C
【解析】与某个顶点vi相关的所有弧是指所有以vi为尾和所有以vi为头的弧。n个顶点的有向图的邻接表含有n个出边表,每个顶点有且只有一个出边表,第i个出边表中的结点表示以顶点v 1为尾的弧。每个出边表设置一个头结点,所有头结点构成一个向量,该向量称为顶点表。因为弧是有方向的,所以每一条弧只用一个边表结点来表示,e条弧则有p个结点,因此有,n个顶点和e条弧的有向图的邻接表含有n个顶点表结点和vi个边表结点。要删除以顶点vi为尾的弧只要删除第i个出边表中的结点就行了,但要删除以顶点vi为头的弧则需在其他出边表中查找顶点信息域为i的结点。为此,需对n个顶点表结点和e个边表结点进行通遍扫描,故其时间复杂度为O(n+e)。
看了●假设一个有n个顶点和e条弧的...的网友还看了以下: