關於樹的儲存表示的說明

2021-08-06 04:26:04 字數 482 閱讀 8883

一般樹常用有四種儲存表示:

1. 父指標表示法:

這種儲存表示找父節點的時間複雜度為o(1),找子女的時間複雜度為o(n),適合經常需要尋找父節點的應用;

2. 子女鏈表示法:

其尋找子女的操作在子女鍊錶中進行,時間複雜度為o(d),d是樹的度。尋找父節點的操作需要遍歷整個子女煉表頭指標組成的陣列,時間複雜度為o(n),n是樹中的節點個數。這種儲存表示適合頻繁尋找子女的應用;

如果將父節點表示法和子女鏈表示法結合起來,則找子女和找父節點都很方便。

3. 廣義表表示法:

利用廣義表的所有操作來對樹做運算;

4. 子女-兄弟鍊錶表示法:

又稱為樹的二叉樹表示,是最節省儲存空間的儲存表示。尋找子女的時間複雜度為o(d),d是樹的度,尋找父節點必須遍歷二叉鍊錶,時間複雜度為o(n)。

4 樹 樹的表示

根據某個給定關鍵字k,從集合r中找出關鍵字與k相同的記錄 int sequentialsearch statictable tbl,elementtype k return 1 順序查詢演算法的時間複雜度為o n 假設n個資料元素的關鍵字滿足有序 比如 小到大 k 1 le k 2 le le k ...

樹和樹的表示

part1 樹 在現實生活中,有很多具有層次的關係。層次管理具有很高的效率。在計算機中也是一樣,樹就實現了計算機中的層次,在查詢修改資訊方面提供了很大的方便。之前在學習離散數學時已經對樹有了了解,所以這裡理解起來很容易。樹的定義 n n 0 個結點構成的有限集合。當n 0時,稱為空樹。對於任意一棵非...

樹的表示方法

順序儲存 查指定結點的雙親方便,指定結點的孩子則需要從頭遍歷 根節點固定儲存在0,且 1表示沒有雙親 define max tree size 100 typedef struct ptnode typedef struct ptree 順序 鏈式儲存 struct ctnode typedef s...