


DFS,深度優先遍歷,因為要記憶經過的節點,便於回溯,所以需要使用棧(先序遍歷),
BFS,廣度優先遍歷,需要使用佇列(層次遍歷)


DFS,BFS都不能唯一確定一個圖(類比於二叉樹)





遍歷頂點不唯一


如果有向圖的拓撲排序序列是唯一的,則圖中必定只有一個頂點的入度為0,一個頂點的出度為0

O(n)

使用鄰接表儲存:
BFS需要藉助一個佇列,O(V)
頂點表中每一個頂點需要訪問一次,在切換頂點的過程中,邊需要訪問一次,也就是邊表必須訪問一次,O(E)
總的時間複雜度為: O(V + V + E) = O(V + E)
使用鄰接矩陣儲存:
佇列O(V)
每一個頂點訪問一次,搜尋每一個頂點所連線的邊需要遍歷一行,也就是O(V*V) 總的時間複雜度為:O(V + V^2) = O(V^2)
DFS演算法的時間複雜度與BFS相同: 如果使用鄰接表,那麼就是將邊表訪問完畢+頂點表訪問完畢,一共是O(V+E)
如果使用鄰接矩陣,那麼就是每一個頂點的鄰接頂點都需要遍歷一行,也就是O(V^2)




一條環路都不允許存在


拓撲排序中,後續節點不存在指向前序節點的路徑,前序節點也不一定存在只想後續節點的路徑





AOV網: 頂點表示活動(Activity On Vertex)






