当前位置:网站首页>牛客-TOP101-BM27
牛客-TOP101-BM27
2022-06-22 05:45:00 【一条吃猫的鱼】
核心思路:层序遍历+Deque
import java.util.*;
import java.util.ArrayList;
/* public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { this.val = val; } } */
public class Solution {
public ArrayList<ArrayList<Integer> > Print(TreeNode pRoot) {
Deque<TreeNode> deque = new ArrayDeque<>();
ArrayList<ArrayList<Integer>> lists = new ArrayList<>();
if(pRoot != null){
deque.addLast(pRoot);
}
while(!deque.isEmpty()){
int count = deque.size();
ArrayList<Integer> list = new ArrayList<>();
for(int i = 0; i < count; i++){
TreeNode t = deque.pollFirst();
list.add(t.val);
if(t.left != null){
deque.addLast(t.left);
}if(t.right != null){
deque.addLast(t.right);
}
}
lists.add(list);
if(deque.isEmpty()){
break;
}
count = deque.size();
ArrayList<Integer> list1 = new ArrayList<>();
for(int i = 0; i < count; i++){
TreeNode t = deque.pollLast();
list1.add(t.val);
if(t.right != null){
deque.addFirst(t.right);
}if(t.left != null){
deque.addFirst(t.left);
}
}
lists.add(list1);
}
return lists;
}
}
d
边栏推荐
猜你喜欢
随机推荐
Non transitive dice (spring daily question 51)
服务器php相关网页开发环境搭建
串口(RS - 232)
自控原理之系统辨识
MFC Tab 控件添加 icon 图标
舰载机自动着舰控制系统研究
mysql基础面试题
Machine learning note 8: octave for handwritten digit recognition based on Neural Network
Vue des nombres élevés du point de vue de l'espace vectoriel (1) - - Introduction à la série
u盘作为启动盘重装win10系统(无需其他软件)
Linear regression: least squares, Tellson estimation, RANSAC
Unity encrypts ASE game data
Understanding of C pointer
BinaryFormatter 保存和加载游戏数据 For Unity
402-字符串(题目:剑指Offer58-II.左旋转字符串、 28. 实现 strStr()、459.重复的子字符串)
Introduction to golang Viper Library
Market development trend forecast and investment risk outlook report of China's silicon carbide industry 2022-2027
空调(春季每日一题 50)
Go language uses zap log Library
分页工具类 pageUtil<T>









