今天有個朋友問到深度遍歷圖這樣的問題,開始都不知道如何下手,就問了問baidu 和 google,看到有人用c++寫的這樣的例子,順便就學習了一下,發現自己都忘得差不多了(包括:資料結構),只能聯想到剛開始學vs2003的時候,學習的第乙個hello worl的例子,要建立乙個控制台應用程式。(文/zhangfeng)
接著就開啟vs2005,新建——>專案——>控制台應用程式
**如下:
1 using system;
2 using system.collections.generic;
3 using system.text;
4 using system.collections;
5 7
34 }
35 36 class vertex
37
43 44
45 public char _label;
46 public bool wasvisited;
47 }
48 49 class graph
50
67 //初始新增點數
68 public void addvertex(char label)
69
72 73 public void addedge(int start, int end)
74
78 79 public void addedge(char startv, char endv)
80
87 if (start == -1) console.writeline("頂點不存在", startv);
88 if (end == -1) console.writeline("頂點不存在", endv);
89 //權值預設為1
90 adjmat[start, end] = 1;
91 adjmat[end, start] = 1;
92 }
93 94 //顯示字元
95 public void displayvertex(int v)
96
101 else
102
105 flag++;
106 }
107 //深度優先遍歷
108 public void dfs()
109
128 }
129 //初始化所有的頂點狀態為未被訪問
130 for (int j = 0; j < countvertexs; j++)
131 vertexlist[j].wasvisited = false;
132 }
133
134 public int getadjunvisitedvertex(int v)
135
141 }
142 }
143
複製**
結果如圖:
C 深度優先遍歷結構演算法
n久都沒做過關於c 的winform程式了,一直都是在研究asp.net的程式。今天有個朋友問到深度遍歷圖這樣的問題,開始都不知道如何下手,就問了問baidu 和 google,看到有人用c 寫的這樣的例子,順便就學習了一下,發現自己都忘得差不多了 包括 資料結構 只能聯想到剛開始學vs2003的時...
DOM深度優先遍歷演算法
通過深度優先遍歷演算法,可以依次獲取每個後代節點的物件。順序 有子元素先獲取子元素,再獲取兄弟元素 主要有2步驟 1.建立節點迭代器物件 parent是要遍歷的節點 var iterator document.createnodeiterator parent,nodefilter.show ele...
深度優先遍歷 廣度優先遍歷
用棧進行儲存元素。訪問頂點 頂點入棧,以便記住它 標記頂點,以便不會再訪問它 2 訪問規則 a.如果可能,訪問乙個鄰接的未訪問頂點,標記它,併入棧。b.當不能執行a時 沒有鄰接的未訪問頂點 如果棧不為空,就從棧中彈出乙個頂點。c.如果不能執行規則a和b,就完成了整個搜尋過程。3 實現 基於以上規則,...