:::: 개발 ::::/::: JAVA :::

JAVA 트리(tree) 이해하기 1

nayha 2021. 2. 5. 14:23
public class Node {

	// 맴버 변수 선언
    private Node left;
    private Node right;
    private Object data;

   //생성자
    public Node(Object data){
        this.data = data;
    }

    // 노드 왼쪽 자식노드와 연결해주는 메소드
    public void makeLeftSubTree(Node sub){
        if(this.left != null){
            this.left = null;
        }
        this.left = sub;
    }
    // 노드 오른쪽 자식 노드와 연결해주느 메소드
    public void makeRightSubTree(Node sub){
        if(this.right != null){
            this.right = null;
        }
        this.right = sub;
    }
    // 데이터 값
    public Object getData(){
        return this.data;
    }

    public Node getLeftSubTree(){
        return this.left;
    }

    public Node getRightSubTree(){
        return  this.right;
    }

	// 실행 테스트 
    public static void main(String[]args){
    	//node1 객체 data 1 생성
        Node node1 = new Node(1);
        //Node node2 = new Node(2);
        //node3 객체 3으로 생성
        Node node3 = new Node(3);
		//node4 객체 "데이타" 로 생성
        Node node4 = new Node("데이타");

		//노드1 왼쪽
        node1.makeLeftSubTree(node4);
        //노드2 오른쪽
        node1.makeRightSubTree(node3);

        System.out.println("노드1 데이터 " + node1.getData());
        System.out.println("노드1 left " + node1.getLeftSubTree());
        System.out.println("노드1 left value " + node1.getLeftSubTree().getData());
        System.out.println("노드1 right value " + node1.getRightSubTree().getData());
    }

}

실행 결과..

반응형