• 20201222 二叉树的锯齿形层序遍历


    给定一个二叉树,返回其节点值的锯齿形层序遍历。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。
    
    例如:
    给定二叉树 [3,9,20,null,null,15,7],
    
        3
       / 
      9  20
        /  
       15   7
    返回锯齿形层序遍历如下:
    
    [
      [3],
      [20,9],
      [15,7]
    ]
    
    来源:力扣(LeetCode)
    链接:https://leetcode-cn.com/problems/binary-tree-zigzag-level-order-traversal
    著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

      public List<List<Integer>> zigzagLevelOrder(TreeNode root) {

        }
      public List<List<Integer>> zigzagLevelOrder(TreeNode root) {
            List<List<Integer>> ans = new LinkedList<List<Integer>>();
            if (root == null) {
                return ans;
            }
    
            Queue<TreeNode> nodeQueue = new LinkedList<TreeNode>();
            nodeQueue.offer(root);
            boolean isOrderLeft = true;
    
            while (!nodeQueue.isEmpty()) {
                Deque<Integer> levelList = new LinkedList<Integer>();
                int size = nodeQueue.size();
                for (int i = 0; i < size; ++i) {
                    TreeNode curNode = nodeQueue.poll();
                    if (isOrderLeft) {
                        levelList.offerLast(curNode.val);
                    } else {
                        levelList.offerFirst(curNode.val);
                    }
                    if (curNode.left != null) {
                        nodeQueue.offer(curNode.left);
                    }
                    if (curNode.right != null) {
                        nodeQueue.offer(curNode.right);
                    }
                }
                ans.add(new LinkedList<Integer>(levelList));
                isOrderLeft = !isOrderLeft;
            }
    
            return ans;
        }
  • 相关阅读:
    聊聊赚钱
    Java面试官最爱问的volatile关键字
    你适合副业挣钱吗?
    SpringBoot自定义starter及自动配置
    mybatis进阶--输入映射和输出映射
    mybatis入门--初识mybatis
    mybatis入门--#{}和${}的区别
    mybatis入门--mybatis和hibernate比较
    mybatis入门--单表的增删改操作
    mybatis进阶--mapper输入映射和输出映射
  • 原文地址:https://www.cnblogs.com/hbhb/p/14173018.html
Copyright © 2020-2023  润新知