- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
图数据结构综述
数据结构实验报告
班级:i got 7
姓名:鸟宝宝
实验内容:图遍历的演示
以邻接表为储存结构,实现图的深度优先和广度优先遍历,输出各种遍历下的节点访问序列。
设计过程:
为了实现对图的深度优先搜索和广度优先搜索,首先是数据类型定义,然后是选取存储结构,最后是在此基础上以不同的方式进行操作,得以实现。
ADT?Queue{
数据对象:D={ai | ai∈ElemSet, i=1,2,...,n, n≥0}
数据关系:R1={a?i-1,ai|ai-1,ai∈D,i=2,...,n}
约定其中a1端为队列头,an端为队列尾?
基本操作:?
enqueue(q,?e)??
初始条件:队列q已存在。?
操作结果:插入元素e为q的新的队尾元素。?
dequeue(q)?
初始条件:q为非空队列。
操作结果:删除q的队头元素,并返回。
}ADT?Queue?
定义图的节点,图的顶点数组,遍历标记的数组
struct node /* 图顶点结构定义 */
{
int vertex; /* 顶点数据信息 */
struct node *nextnode; /* 指下一顶点的指标 */
};
typedef struct node *graph; /* 图的结构新型态 */
struct node head[9]; /* 图顶点数组 */
int visited[9]; /* 遍历标记数组 */
建立确定图的存储结构邻接表
void creategraph(int node[20][2],int num)
{ //二维数组向邻接表的转化
/*num指的是图的边数*/
graph newnode; // 顶点指针
graph ptr;
int from; //边起点
int to; // 边终点
int i;
for ( i = 0; i num; i++ )
{
from = node[i][0]; // 边的起点
to = node[i][1]; // 边的终点
newnode = ( graph ) malloc(sizeof(struct node)); // 建立新顶点
newnode-vertex = to; // 顶点内容
newnode-nextnode = NULL;
ptr = (head[from]); // 顶点位置
while ( ptr-nextnode != NULL )
ptr = ptr-nextnode;
ptr-nextnode = newnode;
}
}
void dfs(int current)
{ //图的深度优先搜索
graph ptr;
visited[current] = 1; /* 记录已遍历过 */
printf( %d\n,current); /* 输出遍历顶点值 */
ptr = head[current].nextnode; /* 顶点位置 */
while ( ptr != NULL ) /* 遍历至链表尾 */
{
if ( visited[ptr-vertex] == 0 ) /* 如过没遍历过 */
dfs(ptr-vertex); /* 递回遍历呼叫 */
ptr = ptr-nextnode; /* 下一个顶点 */
}
}
int enqueue(int value)
{ //数值入队列
if ( rear = MAXQUEUE ) /* 检查队列是否全满 */
return -1; /* 无法
您可能关注的文档
最近下载
- 非结核分枝杆菌病诊断和处理方式.ppt
- EOCR-3DE智能型电动机保护器选型操作说明书.pdf VIP
- 流感防治知识讲座.pptx
- 江苏南京六校联合体2024-2025学年高二上学期1月期末化学试题含答案.pdf VIP
- 江苏南京六校联合体2023-2024学年高二上学期期末化学试卷含答案.pdf VIP
- 居民慢性病管理服务现状调查问卷[复制].docx VIP
- 2025年四川农村信用社招聘考试(综合基础知识)历年参考题库含答案详解.docx VIP
- 鼻空肠管置管的维护考试试题及答案.docx VIP
- 第18课 从九一八事变到西安事变(说课稿)-2024-2025学年八年级历史上册素养提升说课稿(统编版).docx
- 高流量呼吸湿化氧疗操作考核.docx VIP
文档评论(0)