leetcode Validate Binary Search Tree
사고방식: 언제 합격한 검색 트리를 위해?1 왼쪽은 합격 검색 트리 2 오른쪽은 합격 검색 트리 3 왼쪽보다 큰 최대치 4 오른쪽보다 작은 최소치
운용 귀속 판단
/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */
public class Solution {
public boolean isValidBST(TreeNode root) {
if(root==null)
{
return true;
}
boolean left=true;
boolean right=true;
if(root.left!=null)
{
left=isValidBST(root.left)&&root.val>getmax(root.left);
}
if(root.right!=null)
{
right=isValidBST(root.right)&&root.val<getmin(root.right);
}
return left&&right;
}
public int getmin(TreeNode root)
{
while(root.left!=null)
{
root=root.left;
}
return root.val;
}
public int getmax(TreeNode root)
{
while(root.right!=null)
{
root=root.right;
}
return root.val;
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.