用正向表存储图的数据, 并实现图的深度优先搜索和广度优先搜索。(C程序)

正向表是对邻接矩阵的行进行压缩的结果,它的特点是将每个顶点的邻接顶点集中在一起存放。有向图的正向表使用一个一维|V|元数组A和一个一维|E|元数组B表示,无向图的正向表使... 正向表是对邻接矩阵的行进行压缩的结果, 它的特点是将每个顶点的邻接顶点集中在一起存放。有向图的正向表使用一个一维|V|元数组A和一个一维|E|元数组B表示, 无向图的正向表使用一个一维|V|元数组A和一个一维2|E|元数组B表示。首先将所有邻接于顶点1的顶点标号依次写入B中, 并将最后一个邻接顶点在B中的地址记录在A[1]中;然后将所有邻接于顶点2的顶点标号依次写入B中, 并将最后一个邻接顶点在B中的地址记录在A[2]中;这样一直进行下去, 直到与最后一个顶点相邻的顶点标号都存入B为止。下面的(b)给出了图(a)所对应的正向表。正向表的空间代价与邻接表相当, 但是由于正向表没有使用指针而减少了一部分结构性开销。
本题要求用正向表存储图的数据, 并实现图的深度优先搜索和广度优先搜索。
[基本要求]
用正向表实现图的基本操作有:
(1) create(G) 建立正向表的过程。输入图G中所有的顶点和边, 然后建立正向表。
(2) first(G,v) 该函数返回G中顶点v的第一个邻接顶点的位置, 若v没有邻接顶点, 或图G中没有顶点v, 则函数值为0。
(3) next(G,v,w) 求下一个邻接顶点的函数。已知w为图G中顶点v的某个邻接顶点, 当w不是v的最后一个邻接顶点时, 返回v的下一个邻接顶点, 否则返回0。
[测试数据]
任意输入一个图的数据, 包括顶点个数、边的个数和每条边相关联的顶点对。
[实现提示]
(1) 用户界面设计为菜单方式。程序运行后,显示如下功能菜单:
1. 建立正向表
2. 输出正向表
3. 深度优先搜索
4. 广度优先搜索
0. 退出
用户每键入一个选择数字,程序就执行相应的功能并再次显示菜单,直至某次用户选择了“ 0. 退出”为止。
(2) 建立正向表时从键盘输入图的数据。
(3) 深度优先搜索和广度优先搜索须输出顶点序列。
(4) 输出正向表就是依次输出数组A和B中所有元素的值。

只需要源程序即可,可以的话,追加100分
展开
 我来答
若以下回答无法解决问题,邀请你更新回答
shmwbzj
2012-06-21
知道答主
回答量:5
采纳率:0%
帮助的人:11.1万
展开全部
详询296036023
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
三生爱为民9098
2012-06-11
知道答主
回答量:7
采纳率:0%
帮助的人:3.9万
展开全部
孩子,放弃吧,你也去看电影吧
追问
狠想骂人,要不,你委屈下?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
狂战火枪控
2012-06-12 · TA获得超过2261个赞
知道小有建树答主
回答量:642
采纳率:0%
帮助的人:210万
展开全部
我找了下. 没这份资料了。。。 坑爹。。。。。。ps:你是长理的?
更多追问追答
追问
长理10级,老兄,还能找到不?纸质的也行啊,帮个忙吧,紧急啊
追答
就是找不到了啊.. 我都上班了 那些纸质的都没了... 坑爹的长理  指不定你是数计学院的。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 3条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式