1. 程式人生 > >資料結構:樹、圖的遍歷

資料結構:樹、圖的遍歷

樹的遍歷

先根遍歷:樹非空,先訪問根節點,在按照從左到右的順序遍歷根節點的每一顆子樹。這個訪問順序與這棵樹對應的二叉樹的先序遍歷順序相同。

後根遍歷:樹非空,則按照從左到右的順序遍歷根節點的每一顆子樹,之後在訪問根節點。其訪問順序和這棵樹對應的二叉樹的中序遍歷順序相同。

二叉樹:先序遍歷,後序遍歷,中序遍歷

 

圖的遍歷

廣度優先遍歷:類似於樹的層次遍歷,從陣列中選擇一個沒有被訪問的頂點v,並標記為已訪問,接著依次訪問其所有未被訪問的鄰接頂點,標記為已訪問,從這些鄰接點出發進行廣度優先遍歷,直到圖中所有和v有路徑相通的頂點都被訪問過,再重複上述步驟,直到所有點都被訪問過。

深度優先遍歷:類似於樹的先序遍歷。從陣列中選擇一個沒有被訪問的頂點v,並標記為已訪問,接著從v的一個未被訪問過的鄰接點v1出發進行深度優先遍歷,再從v1開始深度優先遍歷,直到所有和v有路徑頂點相通的頂點都被訪問過,重複上訴所有步驟,直到所有丁點都被訪問過。