Free Lines Arrow
본문 바로가기
Algorithm/알고리즘 기본

[Algorithm] Binary Search Tree - Tree traversal

by skahn1215 2021. 6. 10.
728x90
반응형

Binary Search Tree 의 Tree traversal구현

마지막으로 순회를 알아보자

 

순회의 종류

Preorder(전위 순회) : Root -> Left -> Right 순으로 방문한다.

Inorder(중위 순회) :  Left -> Root -> Right 순으로 방문한다.

Postorder(후위 순회) :  Left -> Right-> Root 순으로 방문한다.

 

그림으로 보는게 빠를것 같다.

 

순회 예시

 

 

 

코드

    public void preOrder(Node node)
    {
        if (node == null) {
            return;
        }

        System.out.println(node.getData());
        preOrder(node.left);
        preOrder(node.right);
    }


    public void inOrder(Node node)
    {
        if (node == null) {
            return;
        }

        inOrder(node.left);
        System.out.println(node.getData());
        inOrder(node.right);
    }


    public void postOrder(Node node)
    {
        if (node == null) {
            return;
        }

        postOrder(node.left);
        postOrder(node.right);
        System.out.println(node.getData());
    }

 

반응형

 

전체코드

구현코드:

https://github.com/rnrl1215/algorithm-base/tree/master/src/main/java/algorithm/binarysearchtree

 

테스트코드:

https://github.com/rnrl1215/algorithm-base/blob/master/src/test/java/BinarySearchNodeTest.java

 

728x90
반응형

댓글