当前位置: 首页 > news >正文

360做网站的苏州建设交通高等职业技术学院

360做网站的,苏州建设交通高等职业技术学院,怎么做各大视频网站的会员代理,永久免费浏览网页软件图的遍历 图的遍历是指从图中的某个顶点出发#xff0c;按照一定的规则访问图中所有顶点#xff0c;并使每个顶点仅被访问一次。图的遍历包括两种主要方法#xff1a;深度优先搜索#xff08;DFS#xff09;和广度优先搜索#xff08;BFS#xff09;。这两种遍历方法在…图的遍历 图的遍历是指从图中的某个顶点出发按照一定的规则访问图中所有顶点并使每个顶点仅被访问一次。图的遍历包括两种主要方法深度优先搜索DFS和广度优先搜索BFS。这两种遍历方法在算法设计、路径搜索、网络分析等方面有广泛的应用。 深度优先搜索DFS 深度优先搜索类似于树的先序遍历采用递归或栈的方式实现。DFS 从一个起始顶点开始访问一个顶点后继续访问它的未访问过的邻接顶点直到所有邻接顶点都被访问过为止然后回溯到上一个顶点继续这一过程直到所有顶点都被访问过为止。 实现步骤 访问起始顶点并标记为已访问。从该顶点出发依次访问每个未被访问的邻接顶点重复步骤 1。若当前顶点的所有邻接顶点都被访问过则回溯到上一个顶点继续访问其他未被访问的邻接顶点。重复以上步骤直到所有顶点都被访问过。 代码实现 #include stdio.h #include stdlib.h#define MAXVEX 100typedef struct EdgeNode {int adjvex;struct EdgeNode *next; } EdgeNode;typedef struct VertexNode {int data;EdgeNode *firstEdge; } VertexNode, AdjList[MAXVEX];typedef struct {AdjList adjList;int numVertexes, numEdges; } GraphAdjList;void DFS(GraphAdjList *G, int i, int *visited) {EdgeNode *p;visited[i] 1;printf(%d , G-adjList[i].data);p G-adjList[i].firstEdge;while (p) {if (!visited[p-adjvex]) {DFS(G, p-adjvex, visited);}p p-next;} }void DFSTraverse(GraphAdjList *G) {int visited[MAXVEX];for (int i 0; i G-numVertexes; i) {visited[i] 0;}for (int i 0; i G-numVertexes; i) {if (!visited[i]) {DFS(G, i, visited);}} }广度优先搜索BFS 广度优先搜索类似于树的层次遍历采用队列的方式实现。BFS 从一个起始顶点开始访问一个顶点后将其所有未被访问的邻接顶点依次入队访问完当前顶点后出队下一个顶点继续这一过程直到所有顶点都被访问过为止。 实现步骤 访问起始顶点并标记为已访问将该顶点入队。当队列不为空时出队一个顶点访问它的所有未被访问的邻接顶点并将这些邻接顶点依次入队。重复步骤 2直到队列为空。 代码实现 #include stdio.h #include stdlib.h#define MAXVEX 100typedef struct EdgeNode {int adjvex;struct EdgeNode *next; } EdgeNode;typedef struct VertexNode {int data;EdgeNode *firstEdge; } VertexNode, AdjList[MAXVEX];typedef struct {AdjList adjList;int numVertexes, numEdges; } GraphAdjList;void BFS(GraphAdjList *G, int i, int *visited) {EdgeNode *p;int queue[MAXVEX];int front 0, rear 0;printf(%d , G-adjList[i].data);visited[i] 1;queue[rear] i;while (front ! rear) {i queue[front];p G-adjList[i].firstEdge;while (p) {if (!visited[p-adjvex]) {printf(%d , G-adjList[p-adjvex].data);visited[p-adjvex] 1;queue[rear] p-adjvex;}p p-next;}} }void BFSTraverse(GraphAdjList *G) {int visited[MAXVEX];for (int i 0; i G-numVertexes; i) {visited[i] 0;}for (int i 0; i G-numVertexes; i) {if (!visited[i]) {BFS(G, i, visited);}} }使用场景 网络爬虫通过图的遍历算法可以从一个网页开始逐步访问所有相关网页。社交网络分析通过图的遍历算法可以找出社交网络中各个用户之间的关系。路径搜索在地图应用中通过图的遍历算法可以找到从一个地点到另一个地点的路径。电路分析在电路设计中通过图的遍历算法可以分析电路中各个元件之间的连接关系。
http://www.hkea.cn/news/14365015/

相关文章:

  • 适合个人做的网站佛山网站优化体验
  • 企业网站最重要的访问对象是营销导向企业网站策划
  • 公司网站二维码怎么做宣传网站建设的步骤
  • 做网站主要注意些什么怎么编写网站代码
  • 在线网站优化wordpress php5.3.5访问慢
  • 淘宝店的网站建设分析wordpress模板淘点金
  • 芜湖网站清远市企业网站seo
  • 一个网站用几个域名优质的网站建设
  • 清河做网站多少钱杭州网站设计的公司
  • 廊坊网站建设优化wordpress 双主页
  • 国外素材网站开网店 建网站要钱吗
  • 松江附近做网站网站运营推广方法总结
  • 威海企业做网站哪家好医疗软件公司排名
  • 山西大同专业网站建设制作价格赣州章贡区地图
  • 做网站的那些高清图上哪里找重庆公司注册流程
  • 东莞网站建设 少儿托管手机app快速开发平台
  • 西安做网站报价西安网站开发建设
  • 用asp做网站有哪些功能fedora做网站服务器
  • 中国物流网站外国知名个人网站
  • 如何建设网站zy258住房和城乡建设管理局官网
  • 网站建设 考核指标做视频网站视频放在哪里
  • 乌尔禾区做网站哪里好专业建站公司联系方式
  • 网站建设广告费 科目网站开发团队奖惩
  • 怎样用网站做单笔外贸网站建设维护公司资质
  • 电商公司网站建设流程移动端网站建设重点有哪些
  • 玻璃钢格栅无锡网站建设公司网站怎么写
  • 前端电商网站设计论文网站建设和销售有关吗
  • 关于音乐的个人网站哪个网站可以自己做行程
  • 自己建网站做电商还赚钱吗域名申请的理由和用途
  • 毕业设计做网站代码jsp可以做网站吗