码迷,mamicode.com
首页 > 其他好文 > 详细

数据结构(树)

时间:2015-09-14 22:22:54      阅读:201      评论:0      收藏:0      [点我收藏+]

标签:

题目1:二叉树的镜像

思路:递归

        8                                8

   6      10        转换成     10     6

5    7   9    11             11   9  7    5

 

 static void SwapNode(Node node)
        {
            if (node == null)
            {
                return;
            }

            Node temp = node.Left;

            node.Left = node.Right;
            node.Right = temp;

            SwapNode(node.Left);
            SwapNode(node.Right);
        }

 题目2:从上往下打印二叉树

思路:利用队列(广度优先)

 

    static void PrintFromTopToBottom(Node node)
        {
            if (node == null)
            {
                return;
            }
            Queue<Node> queue = new Queue<Node>();
            queue.Enqueue(node);
            while (queue.Count > 0)
            {
                Node current = queue.Dequeue();
                Console.WriteLine(current.Value);
                if (current.Left != null)
                {
                    queue.Enqueue(current.Left);
                }
                if (current.Right != null)
                {
                    queue.Enqueue(current.Right);
                }
            }
        }

 

数据结构(树)

标签:

原文地址:http://www.cnblogs.com/leonhart/p/4808276.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!