二叉排序樹一些操作

2021-08-28 01:10:45 字數 971 閱讀 8618

輸入若干個不同的正整數(以0結束),按順序建立一顆二叉排序樹,輸出中序遍歷結果。再輸入乙個數x,在建好的二叉排序樹中查詢有無關鍵字x這個結點,有則刪除該節點,無則插入這個結點,刪除或插入後還要保證滿足二叉排序樹的要求。最後請用鄰接表的形式再次輸入該二叉排序樹。

#include#include#include#include#includeusing namespace std;

struct node ;

node*root;

void build(int k, struct node*&x)

else

else

}}void puts(struct node *x)

}void exers(node *&x)

if (n->right!=null&&n->right->val == x->val)

if (x->val > n->val)

else

}} else

n = n->right;

}x->right = x->left->right;

x->val = x->left->val;

x->left = x->left->left;

} else

else

} }}

void finds(int x)

if (x > n->val)

n = n->right;

else

n = n->left; }}

void print(node *x)

int main()

puts(root);

cout << endl;

cin >> x;

finds(x);

puts(root);

cout << endl;

print(root);

return 0;

}

二叉排序樹的操作

二叉排序樹的建立,中序遍歷,前序遍歷,後序遍歷,計算總結點數,計算樹的深度 二叉排序樹的建立 void creattree tree t,int m if melement creattree t lchild,m else creattree t rchild,m 前序遍歷 void preord...

二叉排序樹基本操作

1.儲存結構 二叉鍊錶 include include typedef struct bitnode bitnode,bitree 2.二叉排序樹查詢演算法 遞迴查詢二叉排序樹t中是否存在key status search bitree t,int key,bitree f,bitree p p指向...

二叉排序樹各項操作

二叉排序樹的各項操作 include include define max20 typedef int datatype typedef struct bi search tree bst tree 插入操作,value是待插入的值 bst tree bst insert bst tree root...