樹預備


根節點
子樹
邊(有向的)
父親(結點)
兒子(結點)
兄弟(結點)
葉結點(沒有兒子的結點)
祖父(結點)
孫子(結點)
路徑(其長爲路徑上的邊的條數,每個結點到它自己有一條長爲0的路徑)

(結點的)深度(從根到該結點的唯一路徑的長,根的深度爲0)

(結點的)高(從該結點到一片樹葉的最長路徑的長,所有樹葉的高爲0,一棵樹的高等於它的根的高)

祖先(包括結點自己對自己的情況)
後裔(包括結點自己對自己的情況)
真祖先
真後裔

樹的典型實現

struct TreeNode
{
    Object element;
    TreeNode *firstChild;
    TreeNode *nextSibling;
};

這裏寫圖片描述

樹的遍歷
前序遍歷(對結點的處理工作是在它的諸兒子結點被處理之前進行的)

後序遍歷(在一個結點的工作是在它的諸兒子結點被計算後進行的)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章