"HR30 Day 22: Binary Search Trees/Java"의 두 판 사이의 차이

잔글 (봇: 자동으로 텍스트 교체 (-</source> +</syntaxhighlight>, -<source +<syntaxhighlight ))
 
3번째 줄: 3번째 줄:
* [[HR30 Day 22: Binary Search Trees]]
* [[HR30 Day 22: Binary Search Trees]]


<source lang='Java'>
<syntaxhighlight lang='Java'>
import java.util.*;
import java.util.*;
import java.io.*;
import java.io.*;
15번째 줄: 15번째 줄:
}
}
class Solution {
class Solution {
</source>
</syntaxhighlight>
<source lang='Java'>
<syntaxhighlight lang='Java'>
     public static int getHeight(Node root) {
     public static int getHeight(Node root) {
         //Write your code here
         //Write your code here
24번째 줄: 24번째 줄:
         return Math.max(left, right) + 1;
         return Math.max(left, right) + 1;
     }
     }
</source>
</syntaxhighlight>
<source lang='Java'>
<syntaxhighlight lang='Java'>
     public static Node insert(Node root,int data) {
     public static Node insert(Node root,int data) {
         if(root==null) {
         if(root==null) {
55번째 줄: 55번째 줄:
     }
     }
}
}
</source>
</syntaxhighlight>

2021년 10월 12일 (화) 23:53 기준 최신판

개요[ | ]

import java.util.*;
import java.io.*;
class Node{
    Node left,right;
    int data;
    Node(int data){
        this.data=data;
        left=right=null;
    }
}
class Solution {
    public static int getHeight(Node root) {
        //Write your code here
        if( root == null ) return -1;
        int left = getHeight(root.left);
        int right = getHeight(root.right);
        return Math.max(left, right) + 1;
    }
    public static Node insert(Node root,int data) {
        if(root==null) {
            return new Node(data);
        }
        else {
            Node cur;
            if(data<=root.data){
                cur=insert(root.left,data);
                root.left=cur;
            }
            else {
                cur=insert(root.right,data);
                root.right=cur;
            }
            return root;
        }
    }
    public static void main(String args[]) {
        Scanner sc=new Scanner(System.in);
        int T=sc.nextInt();
        Node root=null;
        while(T-->0) {
            int data=sc.nextInt();
            root=insert(root,data);
        }
        int height=getHeight(root);
        System.out.println(height);
    }
}
문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}