본문 바로가기
c#/수업 내용

자료구조 트리 이진트리(PreOrder) + 재귀함수

by 이지훈26 2021. 9. 29.

PreOrder

1.다이어그램

2.순서도

종료를 안했음;

 

 

수정

null이다 라고 하는 것보다 null이 아니다로 두고 해야 구현이 가능함

 

수정

3.코드화

public void PreOrder()
        {
            
            if(this.Root == null)
            {
                throw new InvalidOperationException("");
            }
            else
            {
                Console.Write("{0} ", this.Root.Data);
                if(this.Root.Left != null)
                {
                    PreOrderRecursive(this.Root.Left);
                }
                else
                {
                    if(this.Root.Right != null)
                    {
                        PreOrderRecursive(this.Root.Right);
                    }
                }
            }
        }

 

재귀적 순서도 코드화

private void PreOrderRecursive(Node node)
        {
            Console.Write("{0} ", node.Data);
            if (node.Left != null)
            {
                PreOrderRecursive(node.Left);
            }
            else
            {
                if (node.Right != null)
                {
                    PreOrderRecursive(node.Right);
                }
            }
        }