閱讀777 返回首頁    go 阿裏雲 go 技術社區[雲棲]


拓撲排序

偽代碼如下:

1. 棧S初始化;累加器count初始化;

2. 掃描頂點表,將沒有前驅(即入度為0)的頂點壓棧;

3. 當棧S非空時循環

    3.1 vj=退出棧頂元素;輸出vj;累加器加1;

3.2 將頂點vj的各個鄰接點的入度減1;

3.3 將新的入度為0的頂點入棧;

4. if (count<vertexNum) 輸出有回路信息;




用棧和隊列都可以實現拓撲排序,隻是打印順序不同

最後更新:2017-04-03 12:53:59

  上一篇:go 檢查一個二叉樹是否平衡的算法分析與C++實現
  下一篇:go 貪吃蛇程序VS2012編譯成功