樹的預備知識

2021-07-07 01:29:39 字數 1088 閱讀 8602

0.1)本文總結於 資料結構與演算法分析,旨在整理出 樹的相關術語和概念(哥子始終記不住樹的高度和深度,記著記著就混淆了,哎,所以分享出來);

1.1)定義樹的一種自然方式是遞迴的方法;

1.2)樹定義:一棵樹是一些節點的集合, 這個集合可以是空集;若非空, 則一棵樹由稱作 根(root)的節點r 以及0個或多個非空的子樹組成;(樹中還有樹, 這本就是乙個遞迴的定義)

1.3)兒子+父親:乙個子樹的根 叫做 根r 的 兒子, 而r 是每一顆子樹的根的 父親;

1.4)樹的性質:

2.1)樹葉:沒有兒子的節點;

2.2)兄弟:具有相同父親的節點;

2.3)路徑:它是 從節點n1 到 nk 的路徑定義為 節點n1、n2、……、nk 的乙個序列, 使得 ni 是 n(i+1) 的父親;

2.4)路徑長度:路徑的長就是該路徑上的邊的條數;

2.5)節點ni 的深度:根 到 ni 的唯一的路徑長度;

2.6)節點ni 的高度:ni 到 葉子節點 的最長的路徑長度;

2.7)祖先+後裔:如果存在 n1 到 n2 的一條路徑,那麼 n1 是 n2 的一位祖先,而 n2 是 n1 的乙個後裔;

attention)兒子兄弟表示法

如下圖所示:向下的箭頭(左指標)指向第乙個兒子節點, 從左到右的箭頭(右指標)指向下乙個兄弟節點;(間接說明了樹的節點有兩個指標)

樹節點定義**如下:

知識星球 預備知識

1.tenorflow 安裝 參考 tensorflow安裝教程 tensorflow 安裝教程 tensorflownews 2.tensrflow基礎 關注圖 會話 tensor 變數 feed和fetch。使用圖 graphs 來表示計算任務 在被稱之為會話 session 的上下文 cont...

Python預備知識

02 執行python程式 2.3.3 python 的 ide pycharm 03 配置pycharm 3.1.2 安裝和啟動步驟 3.1.3 設定專業版啟 標 3.1.4 解除安裝之前版本的 pycharm 3.2 匯入配置資訊 3.3 開啟乙個 python 專案 3.4 新建乙個專案 3....

C 預備知識

一 學前基礎 學習c 最好有一定的c語言基礎,當然也可以直接學習c 但是難度肯定不一樣。建議先粗略了解c語言的語法結構等基礎概念知識,在進行系統化的學習c 二 c和c 的區別 c 在c的基礎上新增了對物件導向程式設計和泛型程式設計的支援,所以c 是c語言的超集,是c語言的擴充版本,意味著任何有效的c...