二叉查詢樹是具有下列性質的二叉樹:
(1)若它的左子樹不空,則左子樹上所有節點的值均小於根節點的值;
(2)若它的右子樹不空,則右子樹上所有節點的值均大於根節點的值;
(3)它的左右子樹也是二叉排序樹。
#include
#include
using
namespace std;
struct binode
;binode *
searchbst
(binode *root,
int k)
binode *
insertbst
(binode *root,
int data)
if(data<=root-
>data)
//插在root的左子樹
root-
>lchild=
insertbst
(root-
>lchild,data)
;else
//插在root的右子樹
root-
>rchild=
insertbst
(root-
>rchild,data)
;return root;
}binode *
creatbst
(int a,
int n)
//將無序序列a[n]建立二叉查詢樹
void
print
(binode *root)
//列印二叉查詢樹
}int
main()
二叉樹 二叉查詢樹
構建二叉樹,判斷是否為二叉查詢樹,遞迴先序遍歷,非遞迴中序遍歷 include include include include using namespace std 二叉樹結點 struct treenode 鍊錶結點 struct listnode struct tempnodetempnode...
二叉樹 二叉查詢樹
二叉樹 binary tree 一種樹型結構,每個節點最多擁有兩個節點。如下圖 幾種型別的二叉樹 1.full binary tree 每個節點的孩子數 是 0 或者 2.對高度沒有要求。如下圖 2.perfect binary tree 這個就是最完美的樹,顧名思義,所有葉子節點都有相同的深度,並...
樹(樹,二叉樹,二叉查詢樹)
1.定義 n n 0 個結點構成的有限集合。當n 0時,稱為空樹 2.對於任一棵非空樹 n 0 它具備以下性質 1 樹中有乙個稱為 根 root 的特殊結點,用 r 表示 2 其餘結點可分為m m 0 個互不相交的有限集t1,t2,其中每個集合本身又是一棵樹,稱為原來樹的子樹。3.樹的一些性質 1 ...