二叉搜索树转排序双向链表
来源:互联网 发布:科比谢幕战数据 编辑:程序博客网 时间:2024/05/22 06:42
例如 10
/ /
5 16 ===> 3<->5<->6<->10<->12<->16
/ / /
3 6 12
使用递归的方式
1: void build_dlist(node_t *node)
2: {
3: if (node->left) {
4: node_t * left = node->left;
5: while (left->right) { //移动到双向链表的最右端,因为此处是链表的最大值。
6: left = left->right;
7: }
8: left->right = node; //左子树链表最后节点指向父节点
9: node->left = left;
10: }
11:
12: if (node->right) {
13: node_t * right = node->right;
14: while (right->left) {
15: right = right->left;
16: }
17: right->left = node;
18: node->right = right;
19: }
20: }
21:
22: void tree_to_list(node_t *node)
23: {
24: if (!node) {
25: return;
26: }
27: tree_to_list(node->left);
28: tree_to_list(node->right);
29: build_dlist(node);
30: }
- 二叉搜索树转排序双向链表
- 二叉搜索树转排序双向链表
- 二叉搜索树转双向链表
- 搜索二叉树转双向链表
- 二叉搜索树转换为排序双向链表
- 算法题24 二叉树的中序遍历之二叉搜索树转排序双向链表
- 【二叉树】将二叉搜索树转换成一个排序的双向链表
- 二叉树--将二叉搜索树转换成一个排序的双向链表
- 二叉搜索树与双向链表
- 二叉搜索树转为双向链表
- 二叉搜索树和双向链表
- 二叉搜索树与双向链表
- 二叉搜索树与双向链表
- 二叉搜索树与双向链表
- 二叉搜索树与双向链表
- 二叉搜索树与双向链表
- 二叉搜索树与双向链表
- 二叉搜索树与双向链表
- Release调试
- apache两种工作模式区别及配置切换
- C/C++中的日期和时间
- webservice 学习笔记,axis2 传递对象数组,非stub方式
- 六月随想
- 二叉搜索树转排序双向链表
- 网络学习资源~
- 费解的NTDLL断点
- c++构造函数及其应用
- sql SELECT时的with(nolock)选项说明
- 慧律法语
- Javascript数据类型
- 文件上传FileUpload组件
- c# 中sealed的用法