• leetcode—98. 验证二叉搜索树


    也不是我做出来的,,

    class Solution(object):
        def isValidBST(self, root):
            """
            :type root: TreeNode
            :rtype: bool
            """
            res=[]
            def helper(root):
                if not root:
                    return True
                helper(root.left)
                res.append(root.val)
                helper(root.right)
            helper(root)
            return res==sorted(res) and len(set(res))==len(res)
    执行用时 :36 ms, 在所有 python 提交中击败了85.49%的用户
    内存消耗 :17.7 MB, 在所有 python 提交中击败了5.07%的用户
     
    ——2019.11.7

     
    自己写了一遍,用中序遍历的列表顺序进行判断的,不是很好的样子。
    public boolean isValidBST(TreeNode root) {
            ArrayList<Integer> list = new ArrayList<>();
            inOrder(root,list);
            int[] a = list.stream().mapToInt(Integer::valueOf).toArray();
            int[] b = Arrays.copyOf(a,a.length);
            Arrays.sort(a);
            if(a.length>1) {
                for (int i = 1; i < a.length; i++) {
                    if (a[i] == a[i - 1]) {
                        return false;
                    }
                }
            }
            return Arrays.equals(a, b);
        }
        //中序遍历
        private void inOrder(TreeNode node,ArrayList<Integer> list){
            if(node == null){
                return;
            }
            inOrder(node.left,list);
            list.add(node.val);
            inOrder(node.right,list);
        }

     ——2020.7.1

     
    我的前方是万里征途,星辰大海!!
  • 相关阅读:
    016_异步处理_Future
    013_REST Service
    012_介绍Soap&Rest
    011_Validation Rule about Time
    010_Soap update
    006_Salesforce Sharing 使用说明
    005_重写 Standard Delete Button
    004_Intelij 使用,Anonymous Apex
    003_关于IntellJ IDE 2016 1. 4的使用
    Dashborad 上显示出错
  • 原文地址:https://www.cnblogs.com/taoyuxin/p/11810687.html
Copyright © 2020-2023  润新知