본문 바로가기

자료구조

이진트리 PreOrder 재귀구현

        public void PreOrder()
        {
            Console.WriteLine("이진트리 PreOrder");
            if (this.Root == null)
            {
                Console.WriteLine("노드가 없습니다.");
            }
            else
            {
                Console.Write("{0} ", this.Root.Data);
                if (this.Root.Left != null)
                {
                    PreOrderRecursive(this.Root.Left);
                }
                if (this.Root.Right != null)
                {
                    PreOrderRecursive(this.Root.Right);
                }
            }
            Console.WriteLine();
        }

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

'자료구조' 카테고리의 다른 글

레벨오더 레벨별 줄바꿔서 출력  (0) 2021.12.28
이진트리 PreOrder with Stack  (0) 2021.12.28
이진트리 LevelOrder + AddChild  (0) 2021.12.28
LCRS트리 PreOrder with Stack  (0) 2021.12.28
LCRS트리 PreOrder 재귀구현  (0) 2021.12.28