博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
记录一下今天犯的错误
阅读量:4569 次
发布时间:2019-06-08

本文共 1726 字,大约阅读时间需要 5 分钟。

输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。

正确:

TreeNode pre = null;    public TreeNode Convert(TreeNode pRootOfTree) {        if (pRootOfTree == null)            return null;        Convert1(pRootOfTree);        TreeNode res = pRootOfTree;        while (res.left != null)            res = res.left;        return res;    }    public void Convert1(TreeNode pRootOfTree) {        if (pRootOfTree == null)            return;        Convert1(pRootOfTree.left);        System.out.print("1:");        System.out.println(pre == null ? "null" : pre.val);        // 记录链表中当前节点的前一个节点        pRootOfTree.left = pre;        if (pre != null)            pre.right = pRootOfTree;        pre = pRootOfTree;        System.out.print("2:");        System.out.println(pre == null ? "null" : pre.val);        Convert1(pRootOfTree.right);    }
View Code

错误:

public TreeNode Convert(TreeNode pRootOfTree) {        if (pRootOfTree == null)            return null;                TreeNode pre = null;        Convert(pRootOfTree, pre);        TreeNode res = pRootOfTree;        while (res.left != null)            res = res.left;        return res;    }    public void Convert(TreeNode pRootOfTree, TreeNode pre) {        if (pRootOfTree == null)            return;        Convert(pRootOfTree.left, pre);        System.out.print("1:");        System.out.println(pre == null ? "null" : pre.val);        // 记录链表中当前节点的前一个节点        pRootOfTree.left = pre;        if (pre != null)            pre.right = pRootOfTree;        pre = pRootOfTree;        System.out.print("2:");        System.out.println(pre == null ? "null" : pre.val);        Convert(pRootOfTree.right, pre);    }
View Code

 

转载于:https://www.cnblogs.com/wangkaipeng/p/10617006.html

你可能感兴趣的文章
android的ArrayMap类
查看>>
2011年5款备受关注的开源 NoSQL 数据库
查看>>
2-4-1 元组
查看>>
476. Number Complement(补数)
查看>>
[HNOI2015]落忆枫音
查看>>
生成函数
查看>>
HTMl5的存储方式sessionStorage和localStorage详解
查看>>
BZOJ 4516: [Sdoi2016]生成魔咒——后缀数组、并查集
查看>>
《JAVA程序设计》实训第一天——《猜猜看》游戏
查看>>
普通用户 crontab 任务不运行
查看>>
hdu 2063 过山车
查看>>
第三次冲刺(三)
查看>>
android实现静默安装demo
查看>>
数据缓存方案
查看>>
HDU 1086:You can Solve a Geometry Problem too
查看>>
HIPO图
查看>>
工作日志2014-06-30
查看>>
稀疏矩阵
查看>>
OpenCV2马拉松第14圈——边缘检測(Sobel,prewitt,roberts)
查看>>
移动端事件点透问题
查看>>