二叉树的层次遍历
2017-06-01 13:21
246 查看
public class Solution { public ArrayList<ArrayList<Integer>> levelOrder(TreeNode root) { ArrayList result = new ArrayList(); if (root == null) { return result; } Queue<TreeNode> queue = new LinkedList<TreeNode>(); queue.offer(root); while (!queue.isEmpty()) { ArrayList<Integer> level = new ArrayList<Integer>(); int size = queue.size(); for (int i = 0; i < size; i++) { TreeNode head = queue.poll(); level.add(head.val); if (head.left != null) { queue.offer(head.left); } if (head.right != null) { queue.offer(head.right); } } result.add(level); } return result; } }
相关文章推荐
- 层次遍历二叉树
- leetcode解题之102&107. Binary Tree Level Order Traversal java版(二叉树层次遍历)
- 按层次遍历二叉树
- 第十一周项目1-(1)二叉树的层次遍历算法
- 二叉树的层次遍历
- 二叉树的层次遍历
- 层次遍历二叉树
- 二叉树的创建及先根中根后根按层次遍历
- 二叉树的先序、中序、后序的非递归遍历(分别用两个栈和一个带标志位的栈两种方法去做)和层次遍历
- 二叉树相关操作(前序遍历,中序遍历,后序遍历,层次序遍历等)递归和非递归实现
- 【简单算法】29.二叉树的层次遍历
- 层次遍历二叉树-三种不同的方法
- Lintcode 二叉树的锯齿形层次遍历
- 层次遍历二叉树 ——微软面试题
- 层次遍历二叉树
- LintCode:二叉树的层次遍历 II
- 【面试】基于二叉树层次遍历相关问题的求解
- 先序,中序,后序,层次遍历二叉树
- 二叉树层次遍历
- 二叉树的层次遍历(f m)