博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java for LeetCode 098 Validate Binary Search Tree
阅读量:5310 次
发布时间:2019-06-14

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

Given a binary tree, determine if it is a valid binary search tree (BST).

Assume a BST is defined as follows:

  • The left subtree of a node contains only nodes with keys less than the node's key.
  • The right subtree of a node contains only nodes with keys greater than the node's key.
  • Both the left and right subtrees must also be binary search trees.

解题思路:

本题方法多多,可以采用DFS,当然最简答的方法是采用之前的中序遍历检查得到的List是否有序即可。

public boolean isValidBST(TreeNode root) {        List
list=inorderTraversal(root); if(list.size()==0) return true; int temp=list.get(0); for(int i=1;i
=list.get(i)) return false; temp=list.get(i); } return true; } public List
inorderTraversal(TreeNode root) { List
list = new ArrayList
(); if(root==null) return list; if (root.left != null) list.addAll(inorderTraversal(root.left)); list.add(root.val); if (root.right != null) list.addAll(inorderTraversal(root.right)); return list; }

 

JAVA实现如下:

 

转载于:https://www.cnblogs.com/tonyluis/p/4520825.html

你可能感兴趣的文章
HDU - 2680(逆向思维,djikstra
查看>>
overflow:auto学习
查看>>
Android屏幕设置只允许上下旋转
查看>>
Android杂谈--修改Android系统内/system目录权限使其可读写
查看>>
函数式语言
查看>>
android 解析XML方式(二)
查看>>
ASP.Net AJAX CalendarExtender 使用
查看>>
oracle 触发器
查看>>
已有数据的表添加自增主键
查看>>
js中数组的用法
查看>>
20145233韩昊辰 第三次实验报告
查看>>
struts2解耦和获取提交的值
查看>>
Kafka实现细节(三)
查看>>
Eclipse+Maven构建web项目及部署时Maven lib依赖问题的解决
查看>>
【整理】LINUX下使用CMAKE安装MYSQL
查看>>
【Linux】Centos配置ssh无密码登录
查看>>
BZOJ3689 异或之
查看>>
通过反射获取对象的构造器
查看>>
JAVA String.format 方法使用介绍
查看>>
iOS.TextKit.02.文字图片混合排版
查看>>