zoukankan      html  css  js  c++  java
  • 记录一下今天犯的错误

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

    正确:

        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
  • 相关阅读:
    对于近期学习上的复习与整理
    ACM的奇计淫巧_输入挂
    hdu2602 DP (01背包)
    hdu 1723 DP/递推
    hdu1428 记忆化搜索(BFS预处理最短路径和+DP+DFS)
    hdu1355
    hdu1331&&hdu1579记忆化搜索(DP+DFS)
    hdu1257 dp(最长上升子序列)
    hdu1208 dp
    hdu 1203 dp(关于概率的```背包?)
  • 原文地址:https://www.cnblogs.com/wangkaipeng/p/10617006.html
Copyright © 2011-2022 走看看