資料結構 二叉樹

2021-08-21 20:57:18 字數 1488 閱讀 8530

二叉樹的特點是,如果當前節點比根節點大則放在根節點的右邊,否則放在左邊;

建立二叉樹節點

function node(element, left, right) ;

}function bst()

1.插入資料二叉樹的資料插入相比較而言是有點複雜的,需要判斷的條件很多,需要挨個進行分析:

如插入一段資料:23,45,16,37,3,99,22

插入之後應該如圖顯示:

}}2.查詢節點、最大值、最小值查詢最大值與最小值,根據二叉樹插入資料的特性可知,查詢最小值只需不斷查詢左邊的節點,直至左節點為空,最大值同理

//查詢節點

this.find = function (element) else if (element < node.element) else if (element > node.element) }}

// 查詢最小值

this.getmin = function (element)

return node;

}// 查詢最大值

this.getmax=function (element)

return node;

}

3.刪除節點二叉樹刪除節點的原理是將當前節點刪除,並將當前節點的右節點移到當前節點的位置上,當前節點的左節點則移動到右節點的最小節點上;

如刪除節點45:因為45節點的右邊節點為99,而99並沒有左邊節點,那麼37節點則新增到99的左邊節點上;

刪除16:

刪除根節點23:刪除根節點之後45作為根節點,23的左節點,變成45左邊節點的左節點

**如下:

//刪除節點

this.remove = function (element) else

}elseelse

}elseelse}}

}

資料結構 二叉樹 反轉二叉樹

include using namespace std define maxsize 1000 struct binary tree node class queue queue queue void queue push binary tree node btn binary tree node ...

《資料結構》 二叉樹

二叉樹 是 n個結點的有限集,它或為空集,或由乙個根結點及兩棵互不相交的 分別稱為該根的左子樹和右子樹的二叉樹組成。二叉樹不是樹的特殊情況,這是兩種不同的資料結構 它與無序樹和度為 2的有序樹不同。二叉樹的性質 1 二叉樹第 i層上的結點數最多為 2 i 1 2 深度為 k的二叉樹至多有 2 k 1...

資料結構 二叉樹

1.二叉樹 二叉樹是一種特殊結構的樹,每個節點中最多有兩個子節點,如圖1所示 圖1 二叉樹 在圖1中的二叉樹裡,a c有兩個子節點,b d有乙個子節點。對於二叉樹還有圖2中的以下情況 圖2 二叉樹的特殊情況 在博文中還介紹了滿二叉樹和完全二叉樹還有其他的特殊二叉樹。2.二叉樹的實現 有兩種實現方式,...