更新時間:2020-07-30 14:22:27 來源:動力節點 瀏覽2700次
1.樹和二叉樹(了解)
前面我們介紹的數據結構數組、棧、隊列,鏈表都是線性數據結構,除此之外還有一種比較復雜的數據結構——樹。
計算機中的樹,是根據生活中的樹抽象而來的,表示N個有父子關系的節點的集合。
N為0的時候,該節點集合為空,這棵樹就是空樹
任何非空樹中,有且只有一個根節點(root)
N>1時,一顆樹由根和若干棵子樹組成,每棵子樹由更小的若干子樹組成
樹中的節點根據有沒有子節點,分成兩種:
普通節點:擁有子節點的節點。
葉子節點:沒有字節點的節點。
二叉樹:一種特殊的,遵循某種規則的樹。
樹的結構因為存在多種子節點情況,真的太復雜了,如果我們對普通的樹加上一些約束,比如讓每一棵樹的節點最多只能包含兩個子節點,而且嚴格區分左子節點和右子節點(左右位置不能交換),此時就形成了二叉樹。
排序二叉樹,有順序的樹:
若左子樹不為空,則左子樹所有節點的值小于根節點的值。
若右子樹不為空,則右子樹所有節點的值大于根節點的值。
左右子樹也分別是排序二叉樹。
紅黑樹:更高查詢效率的的排序二叉樹。
排序二叉樹可以快速查找,但是如果只有左節點或者左右右節點的時候,此時二叉樹就變成了普通的鏈表結構,查詢效率比較低。為此一種更高效的二叉樹出現了——紅黑樹。
每個節點要么是紅色的,要么是黑色的。
根節點永遠是黑色的。
所有葉子節點都是空節點(null),是黑色的。
每個紅色節點的兩個子節點都是黑色的。
從任何一個節點到其子樹每個葉子節點的路徑都包含相同數量的黑色節點。
學習方法指南:http://m.dabaquan.cn/javavideo/149.html
Java零基礎入門:http://m.dabaquan.cn/javavideo/110.html
Java入門到精通:http://m.dabaquan.cn/javavideo/144.html
以上就是動力節點java培訓機構的小編針對“Java入門菜鳥教程下載之樹和二叉樹基礎”的內容進行的回答,希望對大家有所幫助,如有疑問,請在線咨詢,有專業老師隨時為你服務。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習