国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

數(shù)據(jù)結構入門 — 二叉樹的概念、性質及結構

這篇具有很好參考價值的文章主要介紹了數(shù)據(jù)結構入門 — 二叉樹的概念、性質及結構。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

本文屬于數(shù)據(jù)結構專欄文章,適合數(shù)據(jù)結構入門者學習,涵蓋數(shù)據(jù)結構基礎的知識和內容體系,文章在介紹數(shù)據(jù)結構時會配合上動圖演示,方便初學者在學習數(shù)據(jù)結構時理解和學習,了解數(shù)據(jù)結構系列專欄點擊下方鏈接。


  • 博客主頁:Duck Bro 博客主頁
  • 系列專欄:數(shù)據(jù)結構專欄
  • 關注博主,后期持續(xù)更新系列文章
  • 如果有錯誤感謝請大家批評指出,及時修改
  • 感謝大家點贊??收藏?評論?

數(shù)據(jù)結構入門 — 二叉樹的概念、性質及結構

本文關鍵字:二叉樹、概念、存儲結構、性質


一、二叉樹的概念

二叉樹是一種數(shù)據(jù)結構,由一組節(jié)點組成,每個節(jié)點最多有兩個子節(jié)點,稱為左子節(jié)點和右子節(jié)點。二叉樹可以為空樹,也可以是一個只有根節(jié)點而沒有子節(jié)點的單節(jié)點樹,或者是一個有多個節(jié)點的樹,每個節(jié)點都有且僅有一個父節(jié)點。

對于任意的二叉樹都是由以下幾種情況復合而成的:
數(shù)據(jù)結構入門 — 二叉樹的概念、性質及結構,數(shù)據(jù)結構,數(shù)據(jù)結構,vscode,c++,c語言

一個二叉樹要么為空樹,要么由一個根節(jié)點和兩棵分別稱為左子樹和右子樹的二叉樹組成。
數(shù)據(jù)結構入門 — 二叉樹的概念、性質及結構,數(shù)據(jù)結構,數(shù)據(jù)結構,vscode,c++,c語言

注意:

  1. 二叉樹不存在度大于2的結點
  2. 二叉樹的子樹有左右之分,次序不能顛倒,因此二叉樹是有序樹

二、特殊的二叉樹

特殊的二叉樹有很多種,幾種特殊的二叉樹都有其獨特的特點,在不同的場景下有不同的應用

名稱 說明
完全二叉樹 除了最后一層節(jié)點不滿以外,其它每層節(jié)點數(shù)都達到最大值。在最后一層上只缺少右側連續(xù)若干節(jié)點。
滿二叉樹 每個節(jié)點都有零或兩個子節(jié)點,且所有葉子節(jié)點都在同一層上。
平衡二叉樹 一棵空樹或者左右兩個子樹高度差的絕對值不超過 1,且左右兩個子樹都是平衡二叉樹。
二叉搜索樹(BST) 一棵空樹或者滿足以下特點的二叉樹:對于任意節(jié)點,左子樹中的所有節(jié)點小于該節(jié)點的值,右子樹中的所有節(jié)點大于該節(jié)點的值。
紅黑樹 一棵自平衡二叉搜索樹,具有以下特點:每個節(jié)點要么是紅色,要么是黑色,根節(jié)點是黑色,葉子節(jié)點是黑色的空節(jié)點,紅色節(jié)點的子節(jié)點只能是黑色的節(jié)點,從任一節(jié)點到其每個葉子節(jié)點的所有路徑都包含相同數(shù)目的黑色節(jié)點。
B 樹 一種自平衡的多路搜索樹,能夠支持對數(shù)據(jù)的高效操作,主要應用于文件系統(tǒng)和數(shù)據(jù)庫管理系統(tǒng)等領域。

三、二叉樹的性質

  1. 若規(guī)定根節(jié)點的層數(shù)為1,則一棵非空二叉樹的第i層上最多有 2 ( n ? 1 ) 2^{(n-1)} 2(n?1)個結點.
  2. 若規(guī)定根節(jié)點的層數(shù)為1,則深度為h的二叉樹的最大結點數(shù)是 2 h ? 1 2^h -1 2h?1 .
  3. 對任何一棵二叉樹, 如果度為0其葉結點個數(shù)為 n 0 n_{0} n0? , 度為2的分支結點個數(shù)為 ,則有 n 0 = n 2 + 1 n_{0}=n_{2}+1 n0?=n2?+1
  4. 若規(guī)定根節(jié)點的層數(shù)為1,具有n個結點的滿二叉樹的深度, h = l o g 2 ( n + 1 ) h= log_{2}(n+1) h=log2?(n+1). (ps: l o g 2 ( n + 1 ) log_{2}(n+1) log2?(n+1)是log以2
    為底,n+1為對數(shù))
  5. 對于具有n個結點的完全二叉樹,如果按照從上至下從左至右的數(shù)組順序對所有節(jié)點從0開始編號,則對于序號為 i 的結點有:
  1. 若i>0,i位置節(jié)點的雙親序號:(i-1)/2;i=0,i為根節(jié)點編號,無雙親節(jié)點
  2. 若2i+1<n,左孩子序號:2i+1,2i+1>=n否則無左孩子
  3. 若2i+2<n,右孩子序號:2i+2,2i+2>=n否則無右孩子

四、二叉樹的結構

二叉樹有兩種基本的存儲結構:順序存儲和鏈式存儲。

1. 順序存儲法

順序結構存儲就是使用數(shù)組來存儲,一般使用數(shù)組只適合表示完全二叉樹,因為不是完全二叉樹會有空間的浪費。而現(xiàn)實中使用中只有堆才會使用數(shù)組來存儲,關于堆后面的文章會專門講解。二叉樹順序存儲在物理上是一個數(shù)組,在邏輯上是一顆二叉樹。
數(shù)據(jù)結構入門 — 二叉樹的概念、性質及結構,數(shù)據(jù)結構,數(shù)據(jù)結構,vscode,c++,c語言

2. 鏈式存儲法

二叉樹的鏈式存儲結構是指,用鏈表來表示一棵二叉樹,即用鏈來指示元素的邏輯關系。 通常的方法是鏈表中每個結點由三個域組成,數(shù)據(jù)域和左右指針域,左右指針分別用來給出該結點左孩子和右孩子所在的鏈結點的存儲地址 。


數(shù)據(jù)結構入門 — 二叉樹的概念、性質及結構,數(shù)據(jù)結構,數(shù)據(jù)結構,vscode,c++,c語言文章來源地址http://www.zghlxwxcb.cn/news/detail-724089.html

到了這里,關于數(shù)據(jù)結構入門 — 二叉樹的概念、性質及結構的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 愛上數(shù)據(jù)結構:二叉樹的基本概念

    愛上數(shù)據(jù)結構:二叉樹的基本概念

    ? ? ??個人主頁 : guoguoqiang. ?? 專欄 : 數(shù)據(jù)結構 ? 樹是一種非線性的數(shù)據(jù)結構,它是由n(n=0)個有限結點組成一個具有層次關系的集合。把它叫做樹是因 為它看起來像一棵倒掛的樹,也就是說它是根朝上,而葉朝下的。 沒有前驅節(jié)點的結點叫做根結點 在樹中,子樹不

    2024年04月14日
    瀏覽(18)
  • 數(shù)據(jù)結構--線索二叉樹的概念

    數(shù)據(jù)結構--線索二叉樹的概念

    中序遍歷序列:D G B E A F C ①如何找到指定結點p在中序遍歷序列中的前驅? ②如何找到p的中序后繼? 思路: 從根節(jié)點出發(fā),重新進行一次中序遍歷,指針q記錄當前訪問的結點,指針pre記錄上一個被訪問的結點 ①當q p時,pre為前驅 ②當pre p時,q為后繼 缺點 : 找前驅、后繼很不方便

    2024年02月13日
    瀏覽(24)
  • 【數(shù)據(jù)結構】樹及二叉樹的概念

    【數(shù)據(jù)結構】樹及二叉樹的概念

    ?? 作者:日出等日落 ?? 專欄:數(shù)據(jù)結構 一次失敗,只是證明我們成功的決心還夠堅強。? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ——博 維 目錄 ???樹概念及結構: ?樹的概念: ?樹的相關概念?:?編輯 ??樹的表示: ?樹在實際中的運用: ??二叉樹概念及結構 ?概念

    2023年04月23日
    瀏覽(26)
  • 初級數(shù)據(jù)結構(五)——樹和二叉樹的概念

    初級數(shù)據(jù)結構(五)——樹和二叉樹的概念

    ????文中代碼源文件已上傳:數(shù)據(jù)結構源碼 ?-上一篇 初級數(shù)據(jù)結構(四)——隊列 ? ? ? ?|????????初級數(shù)據(jù)結構(六)——堆 下一篇- ? ? ? ? 自然界中的樹由根部開始向上生長,隨機長出分支,分支之上又可長出分支,層層遞進,直至長出葉子則此分支結束。 ??

    2024年02月04日
    瀏覽(25)
  • 【初階數(shù)據(jù)結構】樹結構與二叉樹的基礎概念

    【初階數(shù)據(jù)結構】樹結構與二叉樹的基礎概念

    君兮_的個人主頁 勤時當勉勵 歲月不待人 C/C++ 游戲開發(fā) Hello,米娜桑們,這里是君兮_,今天帶來數(shù)據(jù)結構里的重點內容也是在筆試,面試中的常見考點——樹與二叉樹,其中二叉樹又分為很多種,我們先來講講基礎的內容帶大家一步步入門 在介紹二叉樹之前,我們得先知道什

    2024年02月08日
    瀏覽(29)
  • 數(shù)據(jù)結構:圖文詳解 樹與二叉樹(樹與二叉樹的概念和性質,存儲,遍歷)

    數(shù)據(jù)結構:圖文詳解 樹與二叉樹(樹與二叉樹的概念和性質,存儲,遍歷)

    目錄 一.樹的概念 二.樹中重要的概念 三.二叉樹的概念 滿二叉樹 完全二叉樹 四.二叉樹的性質 五.二叉樹的存儲 六.二叉樹的遍歷 前序遍歷 中序遍歷? 后序遍歷? 樹是一種 非線性數(shù)據(jù)結構 ,它由節(jié)點和邊組成。樹的每個節(jié)點可以有零個或多個子節(jié)點,其中一個節(jié)點被指定為

    2024年02月04日
    瀏覽(24)
  • 【數(shù)據(jù)結構】樹二叉樹的概念以及堆的詳解

    【數(shù)據(jù)結構】樹二叉樹的概念以及堆的詳解

    ?鏈接1:【數(shù)據(jù)結構】順序表 ?鏈接2:【數(shù)據(jù)結構】單鏈表 ?鏈接3:【數(shù)據(jù)結構】雙向帶頭循環(huán)鏈表 ?鏈接4:【數(shù)據(jù)結構】棧和隊列 百度百科的解釋 :樹是一種 非線性 的數(shù)據(jù)結構,它是由n(n≥0)個有限節(jié)點組成一個具有層次關系的集合。 把它叫做樹是因為它看起來像

    2024年02月16日
    瀏覽(50)
  • 【數(shù)據(jù)結構入門】二叉樹的遍歷(前序、中序、后序、層序)

    【數(shù)據(jù)結構入門】二叉樹的遍歷(前序、中序、后序、層序)

    個人主頁:平行線也會相交 歡迎 點贊?? 收藏? 留言? 加關注??本文由 平行線也會相交 原創(chuàng) 收錄于專欄【數(shù)據(jù)結構初階(C實現(xiàn))】 什么是二叉樹遍歷: 二叉樹遍歷就是按照某種特定的規(guī)則,依次堆二叉樹中的結點進行相應的操作,并且 每個結點只操作一次 。訪問結點

    2023年04月09日
    瀏覽(23)
  • 數(shù)據(jù)結構入門(C語言版)二叉樹的順序結構及堆的概念及結構實現(xiàn)應用

    數(shù)據(jù)結構入門(C語言版)二叉樹的順序結構及堆的概念及結構實現(xiàn)應用

    普通的二叉樹是不適合用數(shù)組來存儲的,因為可能會存在大量的空間浪費。而完全二叉樹更適合使用順序結構存儲。現(xiàn)實中我們通常把堆(一種二叉樹)使用 順序結構的數(shù)組來存儲 ,需要注意的是 這里的堆和操作系統(tǒng)虛擬進程地址空間中的堆是兩回事 ,一個是 數(shù)據(jù)結構 ,一

    2023年04月19日
    瀏覽(28)
  • 【數(shù)據(jù)結構】樹與二叉樹(一):樹(森林)的基本概念:父親、兒子、兄弟、后裔、祖先、度、葉子結點、分支結點、結點的層數(shù)、路徑、路徑長度、結點的深度、樹的深度

    【數(shù)據(jù)結構】樹與二叉樹(一):樹(森林)的基本概念:父親、兒子、兄弟、后裔、祖先、度、葉子結點、分支結點、結點的層數(shù)、路徑、路徑長度、結點的深度、樹的深度

    樹 一棵樹是結點的有限集合T: 若T非空,則: 有一個特別標出的結點,稱作該樹的 根 ,記為root(T); 其余結點分成若干個不相交的非空集合T1, T2, …, Tm (m0),其中T1, T2, …, Tm又都是樹,稱作root(T)的 子樹 。 T 空時為空樹,記作root(T)=NULL。 有序樹、無序樹 ??如果子樹T1, T

    2024年02月05日
    瀏覽(18)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包