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

數(shù)據(jù)結(jié)構(gòu)之二叉樹簡介

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

二叉樹

二叉樹是一種非線性數(shù)據(jù)結(jié)構(gòu),代表“祖先”與“后代”之間的派生關(guān)系,體現(xiàn)了“一分為二”的分治邏輯。與鏈表相似,二叉樹的基本單元是節(jié)點,每個節(jié)點包含值,左子節(jié)點的索引,右子節(jié)點的索引

/* 二叉樹節(jié)點結(jié)構(gòu)體 */
struct TreeNode {
    int val;          // 節(jié)點值
    TreeNode *left;   // 左子節(jié)點指針
    TreeNode *right;  // 右子節(jié)點指針
    TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
};
  • 當給定一個二叉樹的節(jié)點時,我們將該節(jié)點的左子節(jié)點及其以下節(jié)點形成的樹稱為該節(jié)點的左子樹,同理可得,右子節(jié)點及其以下節(jié)點形成的樹稱為該節(jié)點的右子樹。

  • 在給定的二叉樹中,除了葉子節(jié)點,其他所有節(jié)點均包含子節(jié)點和非空子樹文章來源地址http://www.zghlxwxcb.cn/news/detail-789799.html

二叉樹的常見術(shù)語

  • 根節(jié)點:位于二叉樹頂層的節(jié)點,沒有父節(jié)點
  • 葉子節(jié)點:沒有字節(jié)的的節(jié)點,左右指針均為null
  • 邊:連接兩個節(jié)點的線段,
  • 節(jié)點所在的層:從頂?shù)降走f增,根節(jié)點的層數(shù)為1
  • 節(jié)點的度:節(jié)點的字節(jié)點的個數(shù),在二叉樹中,節(jié)點的度的取值范圍:0,1,2
  • 二叉樹的高度:從根節(jié)點到最遠葉子節(jié)點所經(jīng)過的邊的數(shù)量
  • 節(jié)點的深度:從根節(jié)點到該節(jié)點邊的數(shù)量
  • 節(jié)點的高度:從最遠的葉子節(jié)點到該節(jié)點邊的數(shù)量

二叉樹的基本操作

/* 初始化二叉樹 */
// 初始化節(jié)點
TreeNode* n1 = new TreeNode(1);
TreeNode* n2 = new TreeNode(2);
TreeNode* n3 = new TreeNode(3);
TreeNode* n4 = new TreeNode(4);
TreeNode* n5 = new TreeNode(5);
// 構(gòu)建節(jié)點之間的引用(指針)
n1->left = n2;
n1->right = n3;
n2->left = n4;
n2->right = n5;
/* 插入與刪除節(jié)點 */
TreeNode* P = new TreeNode(0);
// 在 n1 -> n2 中間插入節(jié)點 P
n1->left = P;
P->left = n2;
// 刪除節(jié)點 P
n1->left = n2;

常見二叉樹的類型

  • 完美二叉樹:**所有層的節(jié)點都被填滿。**所有葉子節(jié)點的度為0,其余所有節(jié)點的度為2
  • 完全二叉樹:只有最底層的節(jié)點沒有被填滿并且最底層的節(jié)點靠左填滿
  • 完滿二叉樹:除了葉子節(jié)點外,其余所有節(jié)點的度為2
  • 平衡二叉樹:任意節(jié)點的左子樹和右子樹的高度之差的絕對值不超過1

到了這里,關(guān)于數(shù)據(jù)結(jié)構(gòu)之二叉樹簡介的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 數(shù)據(jù)結(jié)構(gòu)之二叉樹(詳細版)

    數(shù)據(jù)結(jié)構(gòu)之二叉樹(詳細版)

    ? ? ? ? 二叉樹作為數(shù)據(jù)結(jié)構(gòu)的一種,尤為重要,下面是對二叉樹的詳細講解。想要了解二叉樹,首先要了解 二叉樹的基本概念,以及創(chuàng)建二叉樹的結(jié)構(gòu),再深層點,遍歷二叉樹的前序中序和后續(xù),其次是層序,后面將會講解如何計算二叉樹的高和葉結(jié)點 等等。 ???????

    2024年02月03日
    瀏覽(26)
  • 數(shù)據(jù)結(jié)構(gòu)之二叉樹(Java)

    數(shù)據(jù)結(jié)構(gòu)之二叉樹(Java)

    在這里先說明一下,結(jié)點和節(jié)點其實一樣的,無須關(guān)注這個。 1. 概念:樹是一種非線性的數(shù)據(jù)結(jié)構(gòu),它是由n個有限節(jié)點組成一個具有層次關(guān)系的集合。 如上圖所示,把此種數(shù)據(jù)結(jié)構(gòu)稱作樹是因為它看起來像一個倒掛的樹。 ?2. 特點 有一個特殊的節(jié)點,稱為根節(jié)點,它是唯一

    2024年02月07日
    瀏覽(18)
  • 數(shù)據(jù)結(jié)構(gòu)之二叉樹的實現(xiàn)

    數(shù)據(jù)結(jié)構(gòu)之二叉樹的實現(xiàn)

    目錄 前言 1. 二叉樹的遍歷 1.1二叉樹的前、中、后序遍歷 1.2?層序遍歷 2.二叉樹的實現(xiàn) 2.1 二叉樹的結(jié)構(gòu) 2.2構(gòu)建二叉樹 ?2.2 前序遍歷的實現(xiàn) 2.3 中序遍歷的實現(xiàn) 2.4 后序遍歷的實現(xiàn) 2.5 計算樹的節(jié)點個數(shù) 2.6 計算樹的深度 2.7 計算葉子節(jié)點個數(shù) 2.8 計算樹第k層的節(jié)點數(shù) 2.9 以內(nèi)容

    2023年04月10日
    瀏覽(23)
  • 《數(shù)據(jù)結(jié)構(gòu)與算法》之二叉樹(補充樹)

    《數(shù)據(jù)結(jié)構(gòu)與算法》之二叉樹(補充樹)

    二叉搜索樹,也稱二叉排序樹或二叉查找樹 二叉搜索樹:一棵二叉樹,可以為空,如果不為空,應(yīng)該滿足以下性質(zhì): 非空左子樹的所有結(jié)點小于其根結(jié)點的鍵值 非空右子樹的所有結(jié)點大于其根結(jié)點的鍵值 左右子樹都是二叉搜索樹 對于二叉樹的查找,其實沿用的是分治法的

    2024年02月08日
    瀏覽(19)
  • 數(shù)據(jù)結(jié)構(gòu)之二叉樹的性質(zhì)與存儲結(jié)構(gòu)

    數(shù)據(jù)結(jié)構(gòu)之二叉樹的性質(zhì)與存儲結(jié)構(gòu)

    ??數(shù)據(jù)結(jié)構(gòu)是程序設(shè)計的重要基礎(chǔ),它所討論的內(nèi)容和技術(shù)對從事軟件項目的開發(fā)有重要作用。學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)要達到的目標是學(xué)會從問題出發(fā),分析和研究計算機加工的數(shù)據(jù)的特性,以便為應(yīng)用所涉及的數(shù)據(jù)選擇適當?shù)倪壿嫿Y(jié)構(gòu)、存儲結(jié)構(gòu)及其相應(yīng)的操作方法,為提高利用

    2024年01月21日
    瀏覽(39)
  • 數(shù)據(jù)結(jié)構(gòu)之二叉樹的數(shù)組表示

    若某節(jié)點的索引為 i ,則該節(jié)點的左子節(jié)點的索引為 2i+1 ,右子節(jié)點的索引為 2i+2 給定某節(jié)點,獲取它的左右字節(jié)點,父節(jié)點 獲取前序遍歷,中序遍歷,后序遍歷,層序遍歷

    2024年01月18日
    瀏覽(27)
  • 數(shù)據(jù)結(jié)構(gòu)奇妙旅程之二叉樹初階

    數(shù)據(jù)結(jié)構(gòu)奇妙旅程之二叉樹初階

    ??????? write in front???????? ?????????大家好,我是xiaoxie.希望你看完之后,有不足之處請多多諒解,讓我們一起共同進步????? . ?? ?xiaoxie?????????—CSDN博客 本文由xiaoxie??????????原創(chuàng) CSDN?如需轉(zhuǎn)載還請通知???? 個人主頁:xiaoxie??

    2024年01月19日
    瀏覽(30)
  • 【數(shù)據(jù)結(jié)構(gòu)之二叉樹的構(gòu)建和遍歷】

    【數(shù)據(jù)結(jié)構(gòu)之二叉樹的構(gòu)建和遍歷】

    前言: 前篇學(xué)習(xí)了 數(shù)據(jù)結(jié)構(gòu)之樹和二叉樹的基本概念知識,那么這篇繼續(xù)完善二叉樹的相關(guān)知識并完成實現(xiàn)二叉樹的構(gòu)建和遍歷的內(nèi)容。 / 知識點匯總 / 因為前篇已經(jīng)非常詳細的單獨學(xué)習(xí)了數(shù)和二叉樹的基本知識概念,那么這里就簡單回顧一下即可。 概念 : 二叉樹(Bina

    2024年02月21日
    瀏覽(25)
  • 數(shù)據(jù)結(jié)構(gòu)初階之二叉樹的詳細解析

    數(shù)據(jù)結(jié)構(gòu)初階之二叉樹的詳細解析

    個人主頁:點我進入主頁 專欄分類:C語言初階? ? ??C語言程序設(shè)計————KTV? ? ? ?C語言小游戲? ? ?C語言進階 C語言刷題? ? ? ?數(shù)據(jù)結(jié)構(gòu)初階? ??Linux 歡迎大家點贊,評論,收藏。 一起努力,共赴大廠。 目錄 1.前言? 2.二叉樹各個功能代碼實現(xiàn) 2.1二叉樹結(jié)構(gòu)體 2.2二叉

    2024年02月05日
    瀏覽(26)
  • 數(shù)據(jù)結(jié)構(gòu)之二叉樹(C語言附詳細代碼)

    數(shù)據(jù)結(jié)構(gòu)之二叉樹(C語言附詳細代碼)

    目錄 一,樹和二叉樹 1.樹 ①定義 ②關(guān)于樹的一些概念 2.二叉樹 ①定義 ②特殊的二叉樹 ③二叉樹的性質(zhì) ④二叉樹的存儲結(jié)構(gòu)(順序結(jié)構(gòu),只適用于完全二叉樹) ⑤二叉樹的遍歷 二,二叉樹操作代碼 1.頭文件 2.函數(shù)代碼 ①創(chuàng)建二叉樹 ②前序遍歷二叉樹 ③中序遍歷二叉樹 ④后序

    2024年02月01日
    瀏覽(25)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包