본문 바로가기

자료구조

사향트리 LeftSkewedTree

더보기
    class App
    {
        //생성자
        public App()
        {
            LeftSkewedTree skewed = new LeftSkewedTree();
            skewed.AddNode("A");
            skewed.AddNode("B");
            skewed.AddNode("C");
            skewed.AddNode("D");

            Console.WriteLine("root data: {0}", skewed.Root.Data);
            Console.WriteLine("root.left data: {0}", skewed.Root.Left.Data);
            Console.WriteLine("root.left.left data: {0}", skewed.Root.Left.Left.Data);
            Console.WriteLine("root.left.left.left data: {0}", skewed.Root.Left.Left.Left.Data);
        }
    }
    class LeftSkewedTree
    {
        public Node Root {
            get; 
            set;
        }

        //생성자
        public LeftSkewedTree()
        {
            
        }

        public void AddNode(string data)
        {
            Node node = new Node(data);

            if (this.Root == null)
            {
                this.Root = node;
            }
            else
            {
                Node temp = this.Root;
                while (true)
                {
                    if (temp.Left == null)
                    {
                        temp.Left = node;
                        return;
                    }
                    else
                    {
                        temp = temp.Left;
                    }
                }
            }
        }
    }

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

LCRS트리 PreOrder 재귀구현  (0) 2021.12.28
사향트리 PreOrder  (0) 2021.12.28
LCRS트리 LevelOrder  (0) 2021.12.28
일반트리  (0) 2021.12.28
LCRS트리  (0) 2021.12.28