本篇文章給大家分享的是有關(guān)如何解析數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)中的二叉樹,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比榕江網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式榕江網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋榕江地區(qū)。費(fèi)用合理售后完善,十載實(shí)體公司更值得信賴。一棵樹最上面的點(diǎn)稱為根節(jié)點(diǎn)
,如果一個(gè)節(jié)點(diǎn)下面連接多個(gè)節(jié)點(diǎn),那么該節(jié)點(diǎn)稱為父節(jié)點(diǎn)
,下面的節(jié)點(diǎn)稱為子節(jié)點(diǎn)
,二叉樹的每一個(gè)節(jié)點(diǎn)最多有2個(gè)子節(jié)點(diǎn),一個(gè)節(jié)點(diǎn)子節(jié)點(diǎn)的個(gè)數(shù)稱為度
,二叉樹每個(gè)節(jié)點(diǎn)的度只能是0,1,2中的一個(gè),度為0的節(jié)點(diǎn)稱為葉節(jié)點(diǎn)
。
二叉查找樹是一種特殊的二叉樹,其插入查找和刪除都非常高效。
實(shí)現(xiàn)二叉查找樹(BST)
TIP:BST
在插入數(shù)據(jù)時(shí)的邏輯,本身就是一種二分法思維。
樹的遍歷
TIP:樹的遍歷一般分為先序遍歷,中序遍歷,后序遍歷,這里的序是指對于一個(gè)節(jié)點(diǎn)以及它的左子節(jié)點(diǎn)和右子節(jié)點(diǎn)的訪問次序。具體使用場景的例子包括:先序遍歷時(shí),可以用于查看樹結(jié)構(gòu),中序遍歷,可以用于顯示排序結(jié)果,后序遍歷,可用于計(jì)算目錄內(nèi)文件占用的數(shù)據(jù)大小。
值的查找
3.1查找給定值
TIP:實(shí)際上就是二分法查找
3.2查找最小值
TIP:BST
中最左側(cè)的節(jié)點(diǎn)。
3.3查找大值
TIP:BST
中最右側(cè)的節(jié)點(diǎn)。
刪除節(jié)點(diǎn)
TIP:主要注意刪除同時(shí)包含左右孩子節(jié)點(diǎn)的節(jié)點(diǎn)時(shí)邏輯,由BST
插入的規(guī)則可以知道,節(jié)點(diǎn)右子樹中所有的節(jié)點(diǎn)都是大于當(dāng)前節(jié)點(diǎn)值的,所以右子樹中找出的最小值是大于當(dāng)前節(jié)點(diǎn)左子樹上所有值的,所以將其上浮至當(dāng)前待刪除節(jié)點(diǎn)位置,是不影響二叉樹特性的。
計(jì)數(shù)
為BST
增加一個(gè)新方法,返回BST
中節(jié)點(diǎn)個(gè)數(shù)。
為BST
增加一個(gè)新方法,返回BST
中邊的個(gè)數(shù)。
為BST
類增加一個(gè)新方法max( )
,返回大值。
為BST
類增加一個(gè)新方法min( )
,返回最小值。
寫一段程序,讀入一個(gè)較大的文本文件,并將其中的單詞保存到BST
中,顯示每個(gè)單詞出現(xiàn)的次數(shù)
在BST
構(gòu)造函數(shù)中增加一個(gè)count
屬性,在增刪節(jié)點(diǎn)成功時(shí)修改count
值實(shí)現(xiàn)計(jì)數(shù)即可。
BST
邊的數(shù)量比節(jié)點(diǎn)數(shù)量少1.
(略)
(略)
分解出的單詞實(shí)際上就是字符串,字符串的比較實(shí)際上就是從第一位開始逐個(gè)比較ASCII碼,用上面實(shí)現(xiàn)的BST
做練習(xí)就好,詞頻統(tǒng)計(jì)更多會(huì)用到Trie
樹,也就是字典樹,感興趣的讀者可以自行查閱。
【先序+中序】或者【后序+中序】都可以還原出唯一的二叉樹,只根據(jù)【先序+后序】還原出的二叉樹不是唯一的(感興趣的可以看看這篇《 為什么只給出前序和后序,不能唯一確定一個(gè)二叉樹 》),這里的二叉樹指的是一般二叉樹,不是二叉搜索樹?;蛘呦嚓P(guān)的文章已經(jīng)很多了,隨手貼一篇帶圖的《由遍歷序列還原二叉樹結(jié)構(gòu)》,理解難度并不高,同樣建議自己編碼實(shí)現(xiàn)一下。
二叉樹是非常重要的數(shù)據(jù)結(jié)構(gòu),書中介紹的只是最基本的知識(shí),更進(jìn)一步的學(xué)習(xí)會(huì)涉及二叉樹的數(shù)學(xué)特性,限制更多性能也更優(yōu)的平衡二叉樹,滿二叉樹,紅黑樹等等,以及相關(guān)的深度優(yōu)先和廣度優(yōu)先算法。
以上就是如何解析數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)中的二叉樹,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見到或用到的。希望你能通過這篇文章學(xué)到更多知識(shí)。更多詳情敬請關(guān)注創(chuàng)新互聯(lián)網(wǎng)站制作公司行業(yè)資訊頻道。
創(chuàng)新互聯(lián)www.cdcxhl.cn,專業(yè)提供香港、美國云服務(wù)器,動(dòng)態(tài)BGP最優(yōu)骨干路由自動(dòng)選擇,持續(xù)穩(wěn)定高效的網(wǎng)絡(luò)助力業(yè)務(wù)部署。公司持有工信部辦法的idc、isp許可證, 機(jī)房獨(dú)有T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確進(jìn)行流量調(diào)度,確保服務(wù)器高可用性。佳節(jié)活動(dòng)現(xiàn)已開啟,新人活動(dòng)云服務(wù)器買多久送多久。
本文名稱:如何解析數(shù)據(jù)結(jié)構(gòu)基礎(chǔ)中的二叉樹-創(chuàng)新互聯(lián)
當(dāng)前URL:http://aaarwkj.com/article24/cocjce.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營銷推廣、網(wǎng)站內(nèi)鏈、網(wǎng)站設(shè)計(jì)、電子商務(wù)、網(wǎng)頁設(shè)計(jì)公司、用戶體驗(yàn)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容