实现图的广度优先搜索算法需使用的辅助数据结构为( ) A.栈 B.队列 C.二叉树
来源:学生作业帮 编辑:大师作文网作业帮 分类:综合作业 时间:2024/11/19 04:17:17
实现图的广度优先搜索算法需使用的辅助数据结构为( ) A.栈 B.队列 C.二叉树
还有深度优先,
还有深度优先,
广度优先用队列,深度优先用栈.简单说明如下:
广度优先:当一个节点被加入队列时,要标记为已遍历,遍历过程中,对于队列第一个元素,遍历其所有能够能一步达到的节点,如果是标记未遍历的,将其加入队列,从第一个元素出发所有能一步直接达到的节点遍历结束后将这个元素出列.
深度优先:当遍历到某个节点A时,如果是标记未遍历,将其入栈,遍历它能够一步直接达到的节点,如果是标记未遍历,将其入栈且标记为已遍历,然后对其进行类似A的操作,否则找能够一步直接达到的节点进行类似操作.直到所有能够一步直接达到的节点都已遍历,将A出栈.
这里使用“能够能一步达到的节点”而非“与其相邻的节点”是考虑到有向图因素.
具体可以找个图,然后使用广度和深度算法搜索一遍,每步自己手工修改队列和栈就明白怎么回事了.
广度优先:当一个节点被加入队列时,要标记为已遍历,遍历过程中,对于队列第一个元素,遍历其所有能够能一步达到的节点,如果是标记未遍历的,将其加入队列,从第一个元素出发所有能一步直接达到的节点遍历结束后将这个元素出列.
深度优先:当遍历到某个节点A时,如果是标记未遍历,将其入栈,遍历它能够一步直接达到的节点,如果是标记未遍历,将其入栈且标记为已遍历,然后对其进行类似A的操作,否则找能够一步直接达到的节点进行类似操作.直到所有能够一步直接达到的节点都已遍历,将A出栈.
这里使用“能够能一步达到的节点”而非“与其相邻的节点”是考虑到有向图因素.
具体可以找个图,然后使用广度和深度算法搜索一遍,每步自己手工修改队列和栈就明白怎么回事了.
1.用邻接表表示图 广度优先搜索 通常采用什么实现算法 a 栈 b 队列 c 树 d图
下列数据结构中,能够按照“先进后出”原则存取数据的是()A循环队列 B栈 C 队列 D二叉树
深度优先搜索和广度优先搜索、A星算法三种算法的区别和联系?
(求解C程序高手)用正向表存储图的数据,并实现图的深度优先搜索和广度优先搜索.
以下数据结构中哪些不是线性结构 A.有向图 B.栈 C.线索二叉树 D.B树 E.队列
具有记忆功能的数据结构:A顺序表 B队列 C循环队列 D栈
2、设某个图的邻接表如图2,根据该临界表执行从顶点A出发的广度优先搜索算法,则经历的
用邻接表表示的图进行广度优先遍历时,通常是采用()来实现算法的.
求助高手 关于数据结构栈与队列的实现
求一个源代码要求显示图的邻接矩阵图的邻接表,深度广度优先遍历最小生成树PRIM算法KRUSCAL算法图的连通分
数据结构题!请回答一下:高度为n、结点数也为n的二叉树,共有( )棵.A.n B.2n−1 C.nͨ
数据结构中的树与二叉树已知一算术表达式的中缀形式A+B*C-D/E,后缀ABC*+DE/-,前缀形式为什么