遍历广度优先是什么意思?
遍历广度优先是什么意思?
算法实现plateintmax_sizevoidDigraphmax_size::depth_first(void(*visit)(Vertex))const/*Post:Thefunction*visithasbeenperformedateachvertexoftheDigraphindepthfirstorder。
Uses:Methodtraversetoproducetherecursivedepthfirstorder。*/{boolvisited[max_size];Vertexv;for(allvinG)visited[v]false;for(allvinG)if(!visited[v])traverse(v,visited,visit);}templateintmax_sizevoidDigraphmax_size::traverse(Vertexv,boolvisited[],void(*visit)(Vertex))const/*Pre:visavertexoftheDigraph。
Post:Thedepthfirsttraversal,usingfunction*visit,hasbeencompletedforvandforallverticesthatcanbereachedfromv。Uses:traverserecursively。
*/{Vertexw;visited[v]true;(*visit)(v);for(allwadjacenttov)if(!visited[w])traverse(w,visited,visit);}遍历广度优先(WidthFirstTraversal)基本思想1、从图中某个顶点V0出发,并访问此顶点;2、从V0出发,访问V0的各个未曾访问的邻接点W1,W2,,Wk;然后,依次从W1,W2,,Wk出发访问各自未被访问的邻接点;3、重复步骤2,直到全部顶点都被访问为止。