博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Algorithms—103.Binary Tree Zigzag Level Order Traversal
阅读量:2456 次
发布时间:2019-05-11

本文共 1163 字,大约阅读时间需要 3 分钟。

思路:参考102题,依然是先放TreeNode进去,然后每次反向存入,注意left和right要跟着方向来。

/** * 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
> zigzagLevelOrder(TreeNode root) { List
> answerList = new ArrayList
>(); List
> list = new ArrayList
>(); if (root == null) { return list; } List
initList = new ArrayList
(); initList.add(root); answerList.add(initList); for (int i = 0; i < answerList.size(); i++) { System.out.println("i=" + i); List
l = new ArrayList
(); List
newList = new ArrayList
(); for (int j = answerList.get(i).size() - 1; j >= 0; j--) { TreeNode tree = answerList.get(i).get(j); l.add(answerList.get(i).get(j).val); if (i % 2 == 1) { if (tree.right != null) { newList.add(tree.right); } if (tree.left != null) { newList.add(tree.left); } } else { if (tree.left != null) { newList.add(tree.left); } if (tree.right != null) { newList.add(tree.right); } } } list.add(l); if (newList.size() != 0) { answerList.add(newList); } } return list; }}

耗时:296ms,上游。

你可能感兴趣的文章
Spring Hibernate集成示例教程(Spring 4 + Hibernate 3和Hibernate 4)
查看>>
在Scala中评估val,var,lazy val和def构造时
查看>>
免费下载谷歌maps软件_Android Google Maps当前位置,夜间模式功能
查看>>
如何在Ubuntu 18.04上安装Elasticsearch Logstash Kibana(Elastic Stack)
查看>>
Spring Session Management – Spring Session JDBC
查看>>
scala解析xml_Scala XML处理–文字,序列化,解析,保存和加载示例
查看>>
soap xml_SOAP XML消息–使用Liquid XML Studio进行了解和创建
查看>>
web界面设计工具_21个用于Web设计师的生产力工具,可提高他们的设计技能
查看>>
Android AutoCompleteTextView示例教程
查看>>
scala上界_Scala方差,上界和下界
查看>>
Hibernate会话工厂
查看>>
TinyLog –轻量级Java日志记录框架教程
查看>>
android 崩溃捕获_Android使用FileProvider捕获图像相机图库
查看>>
wordpress表格筛选_您是否尝试过使用#1 WordPress插件在您的网站上创建表格?
查看>>
使用Kotlin的Android TextView –全面教程
查看>>
scala几种循环判断语句_Scala循环控制语句– while,while和for循环
查看>>
java.lang.UnsupportedClassVersionError
查看>>
Android onSaveInstanceState onRestoreInstanceState
查看>>
qt 工具栏分隔符_带有分隔线和上下文工具栏的RecyclerView Android
查看>>
Java中的会话管理– HttpServlet,Cookie,URL重写
查看>>