色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

二叉樹的代碼實現(xiàn)

冬至子 ? 來源:計算機科學(xué)實驗室 ? 作者:好壞生長 ? 2023-01-18 10:41 ? 次閱讀

二叉樹是一種特殊的樹型結(jié)構(gòu),一般都以二叉樹作為樹型結(jié)構(gòu)學(xué)習(xí)的案例講解。

2.jpg

二叉樹的主要操作有遍歷,例如有先序遍歷、中序遍歷、后序遍歷。在遍歷之前,就是創(chuàng)建一棵二叉樹,當然,還需要有刪除二叉樹的算法。

以二叉樹的創(chuàng)建、刪除、先序遍歷為例,實現(xiàn)代碼如下

#include 
#include 


typedef char ElemType;
typedef struct node
{  ElemType data;
  struct node *lchild, *rchild;
} BTNode;      




BTNode * createTree(BTNode *tree){
  ElemType e; 
  fflush(stdin);
  scanf("%c", &e);
  if(e != '#'){
    tree = (BTNode *)malloc(sizeof(BTNode));
    tree->data = e; tree->lchild = NULL; tree->rchild = NULL;
    tree->lchild = createTree(tree->lchild);
    tree->rchild = createTree(tree->rchild);
  }
  return tree;
}


void DestroyBTree(BTNode *b)
{  if (b==NULL) return ;
  else
    {  DestroyBTree(b->lchild);
      DestroyBTree(b->rchild);
      free(b);           
  }
}


void PreOrder(BTNode *b)
{  if (b!=NULL)  
   {  printf("%c ",b->data); 
   PreOrder(b->lchild);
   PreOrder(b->rchild);
}
}


int main(){
  BTNode *tree = createTree(tree);


  PreOrder(tree);


  DestroyBTree(tree);
  return 0;
}

測試用例如下

A
B
D
#
G
#
#
#
C
E
#
#
F
#
#
A B D G C E F

以上測試用的測試案例,就是上述二叉樹圖形的結(jié)構(gòu),二叉樹構(gòu)成過程中,以先序的方式創(chuàng)建,子樹為空的時候,輸入為#

上述算法中,還可以做更多的優(yōu)化,每一個優(yōu)化都是一次進步。

審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 二叉樹
    +關(guān)注

    關(guān)注

    0

    文章

    74

    瀏覽量

    12324
收藏 人收藏

    評論

    相關(guān)推薦

    計算機二叉樹的問題

    各位大神,本人馬上要考計算機級了,那個二叉樹老是弄不明白,比如一個題目,一棵二叉樹共有25個節(jié)點,其中五個葉子節(jié)點,則度為1的節(jié)點數(shù)為?
    發(fā)表于 09-04 09:45

    基于二叉樹的時序電路測試序列設(shè)計

    為了實現(xiàn)時序電路狀態(tài)驗證和故障檢測,需要事先設(shè)計一個輸入測試序列。基于二叉樹節(jié)點和樹枝的特性,建立時序電路狀態(tài)二叉樹,按照電路二叉樹節(jié)點(狀態(tài))與樹枝(輸入)的層次邏輯
    發(fā)表于 07-12 13:57 ?0次下載
    基于<b class='flag-5'>二叉樹</b>的時序電路測試序列設(shè)計

    二叉樹層次遍歷算法的驗證

    實現(xiàn)二叉樹的層次遍歷算法,并對用”A(B(D,E(H(J,K(L,M(,N))))),C(F,G(,I)))”創(chuàng)建的二叉樹進行測試。
    發(fā)表于 11-28 01:05 ?2096次閱讀
    <b class='flag-5'>二叉樹</b>層次遍歷算法的驗證

    二叉樹,一種基礎(chǔ)的數(shù)據(jù)結(jié)構(gòu)類型

    然后我們再定義一棵深度也為 3 的二叉樹,該二叉樹的 n 個結(jié)點(n≤7),當從 1 到 n 的每個結(jié)點都與上圖中的編號結(jié)點一一對應(yīng)時,這二叉樹就稱為完全二叉樹。
    的頭像 發(fā)表于 04-13 10:48 ?4349次閱讀
    <b class='flag-5'>二叉樹</b>,一種基礎(chǔ)的數(shù)據(jù)結(jié)構(gòu)類型

    詳解電源二叉樹到底是什么

    作為數(shù)據(jù)結(jié)構(gòu)的基礎(chǔ),分很多種,像 AVL 、紅黑、二叉搜索....今天我想分享的是關(guān)于二叉樹
    的頭像 發(fā)表于 06-06 15:05 ?1w次閱讀
    詳解電源<b class='flag-5'>二叉樹</b>到底是什么

    C語言二叉樹代碼免費下載

    本文檔的主要內(nèi)容詳細介紹的是C語言二叉樹代碼免費下載。
    發(fā)表于 08-27 08:00 ?1次下載

    紅黑(Red Black Tree)是一種自平衡的二叉搜索

    平衡(Balance):就是當結(jié)點數(shù)量固定時,左右子樹的高度越接近,這棵二叉樹越平衡(高度越低)。而最理想的平衡就是完全二叉樹/滿二叉樹,高度最小的二叉樹。
    的頭像 發(fā)表于 07-01 15:05 ?5701次閱讀
    紅黑<b class='flag-5'>樹</b>(Red Black Tree)是一種自平衡的<b class='flag-5'>二叉</b>搜索<b class='flag-5'>樹</b>

    二叉樹操作的相關(guān)知識和代碼詳解

    是數(shù)據(jù)結(jié)構(gòu)中的重中之重,尤其以各類二叉樹為學(xué)習(xí)的難點。在面試環(huán)節(jié)中,二叉樹也是必考的模塊。本文主要講二叉樹操作的相關(guān)知識,梳理面試??嫉膬?nèi)容。請大家跟隨小編一起來復(fù)習(xí)吧。 本篇針對面
    的頭像 發(fā)表于 12-12 11:04 ?2039次閱讀
    <b class='flag-5'>二叉樹</b>操作的相關(guān)知識和<b class='flag-5'>代碼</b>詳解

    二叉樹的前序遍歷非遞歸實現(xiàn)

    我們之前說了二叉樹基礎(chǔ)及二叉的幾種遍歷方式及練習(xí)題,今天我們來看一下二叉樹的前序遍歷非遞歸實現(xiàn)。 前序遍歷的順序是, 對于中的某節(jié)點,先遍
    的頭像 發(fā)表于 05-28 13:59 ?1952次閱讀

    C語言數(shù)據(jù)結(jié)構(gòu):什么是二叉樹

    完全二叉樹:完全二叉樹是效率很高的數(shù)據(jù)結(jié)構(gòu)。對于深度為K,有n個節(jié)點的二叉樹,當且僅當每一個節(jié)點都與深度為K的滿二叉樹中編號從1至n的節(jié)點一一對應(yīng)時,稱為完全
    的頭像 發(fā)表于 04-21 16:20 ?2508次閱讀

    怎么就能構(gòu)造成二叉樹呢?

    一直跟著公眾號學(xué)算法的錄友 應(yīng)該知道,我在二叉樹:構(gòu)造二叉樹登場!,已經(jīng)講過,只有 中序與后序 和 中序和前序 可以確定一顆唯一的二叉樹。前序和后序是不能確定唯一的二叉樹的。
    的頭像 發(fā)表于 07-14 11:20 ?1579次閱讀

    二叉樹的最大深度

    精簡之后的代碼根本看不出是哪種遍歷方式,也看不出遞歸三部曲的步驟,所以如果對二叉樹的操作還不熟練,盡量不要直接照著精簡代碼來學(xué)。
    的頭像 發(fā)表于 07-26 11:28 ?1072次閱讀

    使用C語言代碼實現(xiàn)平衡二叉樹

    這篇博客主要總結(jié)平衡二叉樹,所以,二叉排序樹知識不會提及,但是會用到。
    的頭像 發(fā)表于 09-21 11:00 ?1093次閱讀

    C++構(gòu)建并復(fù)制二叉樹

    使用C++構(gòu)建一個二叉樹并復(fù)制、輸出。
    的頭像 發(fā)表于 01-10 15:17 ?1014次閱讀
    C++構(gòu)建并復(fù)制<b class='flag-5'>二叉樹</b>

    C++自定義二叉樹并輸出二叉樹圖形

    使用C++構(gòu)建一個二叉樹并輸出。
    的頭像 發(fā)表于 01-10 16:29 ?1744次閱讀
    C++自定義<b class='flag-5'>二叉樹</b>并輸出<b class='flag-5'>二叉樹</b>圖形
    主站蜘蛛池模板: 香蕉在线播放| 亚洲欧洲自拍偷拍| 97色伦97色伦国产| 国产亚洲999精品AA片在线爽| 免费在线伦理片| 在线成人精品国产区免费| 国产视频精品在线偷拍| 日韩av国产av欧美天堂社区| 99re10久久热| 美女被爆插| 在线精品视频免费观看| 国产午夜亚洲精品理论片八戒 | 国精一区二区AV在线观看网站| 先锋资源久久| 国产毛A片啊久久久久久A| 亚洲 自拍 偷拍 另类综合图区 | 成年视频xxxxxx在线| 日韩 亚洲 欧美 中文 高清| 动漫美女喷水| 偷偷鲁青春草原视频| 国产在线观看免费观看| 一边亲着一面膜下奶韩剧免费| 快播最新电影网站| 99在线这精品视频| 日本粉嫩学生毛绒绒| 国产成人免费片在线视频观看| 性夜夜春夜夜爽AA片A| 精品国产影院| 中文字幕专区高清在线观看| 内射一区二区精品视频在线观看 | 特级淫片大乳女子高清视频 | 日日摸夜夜嗷嗷叫日日拍| 国产-第1页-浮力影院| 亚洲成在人线视频| 久久久久免费视频| 99久久爱re热6在线播放| 日日啪无需播放器| 国模沟沟一区二区三区| 中文字幕不卡在线高清| 欧美日韩在线成人看片a| 囯产精品久久久久免费蜜桃|