b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

请编写一个判别给定二叉树是否为二叉排序树的算法。

电脑杂谈  发布时间:2020-03-05 01:00:57  来源:网络整理

判断 二叉排序树_二叉树的排序_判断完全二叉树的算法

北顾岛城头像北顾岛城

递归形式

//将中序遍历数据存在一个数组中

int data[SIZE]判断 二叉排序树,i = 0;

void inOrder(Node *p){

if(p != null){

inOrder(p -> lchild);

data[i++] = p -> data;

inOrder(p -> rchild);

判断完全二叉树的算法_二叉树的排序_判断 二叉排序树

}

int checkBST(BTree *t){

return checkBST(t -> root);

int checkBST(Node *p){

inOrder(p);

for(int k = 0; k < i - 1; k++){

if(data[k] >= data[k + 1])

return 0;

}

判断 二叉排序树_二叉树的排序_判断完全二叉树的算法

return 1;

非递归形式

//将中序遍历数据存在一个数组中

int data[SIZE]判断 二叉排序树, i = 0;

void inOrder(Node *p){

Node *st[SIZE];

int top = -1;

while(top != -1 || p != null){

while(p != null){

判断 二叉排序树_二叉树的排序_判断完全二叉树的算法

st[++top] = p;

p = p -> lchild;

}

if(top != -1){

p = st[top--];

data[i++] = p -> data;

p = p -> rchild;

}

}

判断完全二叉树的算法_二叉树的排序_判断 二叉排序树

int checkBST(BTree *t){

return checkBST(t -> root);

int checkBST(Node *p){

inOrder(p);

for(int k = 0; k < i - 1; k++){

if(data[k] >= data[k + 1])

return 0;

}

return 1;


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-143024-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      • 王毅
        王毅

        有病的才是你

      • 谢霆锋
        谢霆锋

        还有哪个品牌在做这个芝麻糊不就知道了

      热点图片
      拼命载入中...