设为首页 加入收藏

TOP

二叉排序树及其C代码(二)
2015-03-19 03:34:52 来源: 作者: 【 】 浏览:248
Tags:排序 及其 代码
ft;
}
/*移花接木,直接赋值,避免交换节点*/
p->key = mid->key;

/*将mid节点的子节点作为pre的子节点,并将mid所指向的节点删除*/
if(pre->right == mid)
pre->right = mid->right;
else
pre->left = mid->right;
free(mid);
}
return 1;
}
/*中序输出bst树*/
void bst_print(bst_tree *root)
{
if(root == NULL)
return;
bst_print(root->left);
printf(" %d ", root->key);
bst_print(root->right);
}

测试代码:main.cpp

#include

#include "bi_search_tree.h"
int main()
{
int a[10] = {5,4,2,8,7,1,9,3,6,10};
int i=0;
bst_tree *root=NULL;
for(i=0; i<10; i++)
root = bst_insert(root, a[i]);
bst_delete(root, 5);
bst_print(root);
printf("\n%d %s\n", root->key, bst_search(root, 10) ? "yes":"no");
return 0;
}


首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇C语言学习认为比较值得重视的程序 下一篇算法-冒泡排序和快速排序(Object-..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: