"HR30 Day 23: BST Level-Order Traversal/Java"의 두 판 사이의 차이

(새 문서: 분류: 30 Days of Code ==개요== * HR30 Day 23: BST Level-Order Traversal <source lang='Java'> import java.util.*; import java.io.*; class Node{ Node left,right; int...)
 
잔글 (봇: 자동으로 텍스트 교체 (-<source +<syntaxhighlight , -</source> +</syntaxhighlight>))
 
(다른 사용자 한 명의 중간 판 하나는 보이지 않습니다)
1번째 줄: 1번째 줄:
[[분류: 30 Days of Code]]
[[분류: HR30 Java]]
==개요==
==개요==
* [[HR30 Day 23: BST Level-Order Traversal]]
* [[HR30 Day 23: BST Level-Order Traversal]]
<source lang='Java'>
<syntaxhighlight lang='Java'>
import java.util.*;
import java.util.*;
import java.io.*;
import java.io.*;
14번째 줄: 14번째 줄:
}
}
class Solution{
class Solution{
</source>
</syntaxhighlight>
<source lang='Java'>
<syntaxhighlight lang='Java'>
     static void levelOrder(Node root){
     static void levelOrder(Node root){
         //Write your code here
         //Write your code here
27번째 줄: 27번째 줄:
         }
         }
     }
     }
</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){
57번째 줄: 57번째 줄:
         }
         }
}
}
</source>
</syntaxhighlight>

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

개요[ | ]

import java.util.*;
import java.io.*;
class Node{
    Node left,right;
    int data;
    Node(int data){
        this.data=data;
        left=right=null;
    }
}
class Solution{
    static void levelOrder(Node root){
        //Write your code here
        Queue<Node> queue = new LinkedList<Node>();
        queue.add(root);
        while(queue.peek() != null) {
            Node node = queue.remove();
            System.out.format("%d ", node.data);
            if(node.left != null) queue.add(node.left);
            if(node.right != null) queue.add(node.right);
        }
    }
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);
            }
            levelOrder(root);
        }	
}
문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}