public class Solution
{
public ArrayList<ArrayList<Integer>> print(TreeNode root)
{
Queue<TreeNode> queue = new LinkedList<>();
ArrayList<ArrayList<Integer>> res = new ArrayList<>();
queue.add(root);
int n = -1;
while (!queue.isEmpty())
{
int size = queue.size();
n = 1;
ArrayList<Integer> list = new ArrayList<>();
while (size-- > 0)
{
TreeNode poll = queue.poll();
list.add(poll.value);
if (poll.left != null)
{
queue.add(poll.left);
}
if (poll.right != null)
{
queue.add(poll.right);
}
if (n % 2 == 0)
{
Collections.reverse(list);
}
res.add(list);
}
n++;
}
return res;
}
}
《剑指offer》NO32.3 之字形从上往下打印二叉树 详解 <Java实现>
最新推荐文章于 2021-03-30 18:38:31 发布