力扣102题(二叉树的层序遍历)
2021/11/6 23:14:27
本文主要是介绍力扣102题(二叉树的层序遍历),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
102、二叉树的层序遍历
基本思想:
从上到下、从左到右依次依次将每个数放入到队列中,然后按顺序依次打印就是想要的结果
具体实现:
1.先将二叉树的根节点放到队列que中
2.第一层循环中
定义列表itemList放二叉树每一层的结果
3.第二程循环中
len控制每一层,减到0的话说明二叉树的一层遍历完
如果队列que不为空,
弹出队列头加入列表itemList
然后判断节点是否有孩子,有的话,把孩子放入队列que
4.
代码:
class Solution { List<List<Integer>> resList = new ArrayList<List<Integer>>(); public List<List<Integer>> levelOrder(TreeNode root) { if (root == null) return resList; Queue<TreeNode> que = new LinkedList<TreeNode>(); que.offer(root); while (!que.isEmpty()){ List<Integer> itemList = new ArrayList<Integer>(); int len = que.size(); while (len > 0){ TreeNode tmpNode = que.poll(); itemList.add(tmpNode.val); if (tmpNode.left != null) que.offer(tmpNode.left); if (tmpNode.right != null) que.offer(tmpNode.right); len--; } resList.add(itemList); } return resList; } }
这篇关于力扣102题(二叉树的层序遍历)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-25外企也半夜发布上线吗?
- 2024-05-24鸿蒙原生应用再新丁!芒果TV 入局鸿蒙
- 2024-05-22基本概念
- 2024-05-22检索数据
- 2024-05-22排序数据
- 2024-05-22基础过滤数据
- 2024-05-22通过逻辑操作符过滤数据
- 2024-05-22通过通配符过滤数据
- 2024-05-22字段的拼接与计算
- 2024-05-22聚合函数