Binary Tree Vertical Order Traversal
来源:互联网 发布:域名购买上godaddy 编辑:程序博客网 时间:2024/06/11 09:59
/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */public class Solution { public List<List<Integer>> verticalOrder(TreeNode root) { List<List<Integer>> res = new LinkedList<>(); if (root == null) { return res; } Map<Integer, List<Integer>> map = new HashMap<>(); Queue<Integer> queue = new LinkedList<>(); Queue<TreeNode> nodeQueue = new LinkedList<>(); nodeQueue.offer(root); queue.offer(0); int min = 0, max = 0; while (!queue.isEmpty()) { TreeNode node = nodeQueue.poll(); int column = queue.poll(); if (map.containsKey(column)) { List<Integer> list = map.get(column); list.add(node.val); } else { List<Integer> list = new LinkedList<>(); list.add(node.val); map.put(column, list); } if (node.left != null) { nodeQueue.offer(node.left); queue.offer(column - 1); if (min > column - 1) { min = column - 1; } } if (node.right != null) { nodeQueue.offer(node.right); queue.offer(column + 1); if (max < column + 1) { max = column + 1; } } } for (int i = min; i <= max; i++) { res.add(map.get(i)); } return res; }}
0 0
- Binary Tree Vertical Order Traversal
- Binary Tree Vertical Order Traversal
- Binary Tree Vertical Order Traversal
- Binary Tree Vertical Order Traversal
- Binary Tree Vertical Order Traversal
- Binary Tree Vertical Order Traversal
- [LeetCode314]Binary Tree Vertical Order Traversal
- Leetcode Binary Tree Vertical Order Traversal
- [Leetcode]Binary Tree Vertical Order Traversal
- LeetCode. 314 Binary Tree Vertical Order Traversal
- LeetCode 314. Binary Tree Vertical Order Traversal
- Leetcode 314. Binary Tree Vertical Order Traversal
- 314.Binary Tree Vertical Order Traversal
- LeetCode 314. Binary Tree Vertical Order Traversal
- 314 Binary Tree Vertical Order Traversal
- 314. Binary Tree Vertical Order Traversal
- 314. Binary Tree Vertical Order Traversal
- [leetcode] 314. Binary Tree Vertical Order Traversal 解题报告
- 双端链表
- Tomcat下面有多少个重要的文件夹?每个文件夹起到什么作用?
- linux PC安装minigui
- 《程序员必读软件架构 Part4 可视化软件》(二)软件架构中用到的图
- 【3004】循环数
- Binary Tree Vertical Order Traversal
- 重构系列之对象行为的重构:《重构》简化条件表达式
- 数据库交互 query
- 仿ios回弹效果scrollview
- 重构系列之对象行为的重构:《重构》简化函数调用
- overflow清除浮动
- 合并两个排序的链表
- java.03
- 贪心算法之汽车加油问题