Python入門篇-數據結構樹(tree)的遍歷


              Python入門篇-數據結構樹(tree)的遍歷

                                      作者:尹正傑

版權聲明:原創作品,謝絕轉載!否則將追究法律責任。

 

 

 

 

 

一.遍歷

  迭代所有元素一遍。

 

二.樹的遍歷

  對樹中所有元素不重復地訪問一遍,也稱作掃描。

 

三.廣度優先遍歷

  層序遍歷: 
    (1)按照樹的層次,從第一層開始,自左向右遍歷元素
    (2)遍歷序列如下圖所示,(ABCDEFGHI)

 

 

四.深度優先遍歷

設樹的根結點為D,左子樹為L,右子樹為R,且要求L一定在R之前,則有下面幾種遍歷方式:
  前序遍歷,也叫先序遍歷、也叫先根遍歷,DLR
  中序遍歷,也叫中根遍歷,LDR
  后序遍歷,也叫后根遍歷,LRD

1>.前序遍歷DLR

從根結點開始,先左子樹后右子樹
  每個子樹內部依然是先根結點,再左子樹后右子樹。遞歸遍歷
  遍歷序列如下圖所示:(ABDGHCEIF)

2>.中序遍歷

從根結點的左子樹開始遍歷,然后是根結點,再右子樹
  每個子樹內部,也是先左子樹,后根結點,再右子樹。遞歸遍歷
  遍歷序列
    左圖:GDHBAIECF
    右圖:GDHBAEICF

 

 

 

 

3>.后序遍歷

  先左子樹,后右子樹,再根結點
  每個子樹內部依然是先左子樹,后右子樹,再根結點。遞歸遍歷
  遍歷序列如下圖所示:(GHDBIEFCA)

 

五.遍歷序列

  將樹中所有元素遍歷一遍后,得到的元素的序列。將層次結構轉換成了線性結構

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM