数据结构与算法
文章平均质量分 71
呆南
这个作者很懒,什么都没留下…
展开
-
试基于图的深度优先搜索策略写一算法,判别以邻接表方式存储的有向图中是否存在由顶点vi到顶点vj的路径(i≠j)
这是原版答案[题目分析]引入一变量level来控制递归进行的层数[算法描述]int visited[MAXSIZE]; //指示顶点是否在当前路径上 int level=1;//递归进行的层数bool exist_path_DFS(ALGraph G,int i,int j)//深度优先判断有向图G中顶点i到顶点j { if(i==j) return 1; //i就是j else { visited[i]=true; for(p=G.vertices[.原创 2020-08-31 19:18:03 · 12222 阅读 · 3 评论 -
采用邻接表存储结构,编写一个算法,判别无向图中任意给定的两个顶点之间是否存在一条长度为为k的简单路径
int visited[MAXSIZE]; int exist_path_len(ALGraph G,int i,int j,int k)//判断邻接表方式存储的有向图G的顶点i到j是否存在长度为k的简单路径 { if(i==j&&k==0) return 1; //找到了一条路径,且长度符合要求 else if(k>0) { visited[i]=1; for(p=G.vertices[i].firstarc;p!=NULL;p=p->nextar原创 2020-08-31 17:42:32 · 13735 阅读 · 21 评论 -
c语言指针和多重指针
数据结构是一种思想,不限制于某一种语言,但再各种语言实现中却有许多小细节不可忽视,比如c语言中的指针,是个让人十分头疼的问题。先以链表为例,这里定义了链表的结点表示,data为该结点存储的数据,next是指向该节点的数据,注:下文的所有代码都只是简化的代码,并不能上机运行。typedef struct node{ Element data; struct node *next;}No...原创 2020-04-28 13:43:08 · 758 阅读 · 1 评论 -
线性表操作和结构
顺序表顺序表的结构:typedef stuct{ ElemType data[MaxSize]; int length;}SqList;顺序表的操作插入bool ListInsert(SqList *L,int i,ElemType e){ //判断插入位置合法性 if(i<1 || i>L.length + 1) return 0; //如果存...原创 2019-11-09 23:21:25 · 209 阅读 · 0 评论 -
严蔚敏数据结构课后参考答案
数据结构(C语言版)(第2版)课后习题答案第1章 绪论1.简述下列概念:数据、数据元素、数据项、数据对象、数据结构、逻辑结构、存储结构、抽象数据类型。答案:数据:是客观事物的符号表示,指所有能输入到计算机中并被计算机程序处理的符号的总称。如数学计算中用到的整数和实数,文本编辑所用到的字符串,多媒体程序处理的图形、图像、声音、动画等通过特殊编码定义后的数据。数据元素:是数据的基本单位,在...原创 2019-11-09 22:48:07 · 17838 阅读 · 21 评论