java 同时进行前中后序遍历

实现二叉树先序,中序和后序遍历

http://www.nowcoder.com/practice/a9fec6c46a684ad5a3abd4e365a9d362

import java.util.*;

public class Solution {
    ArrayList<Integer> first=new ArrayList<Integer>();
    ArrayList<Integer> middle=new ArrayList<Integer>();
    ArrayList<Integer> back=new ArrayList<Integer>();
    
    int[][] all=new int[3][];
    
    public int[][] threeOrders (TreeNode root) {
        if(root!=null){
          // 前序:根永远先输出,先输出的意思就是在找孩子之前
            first.add(root.val);
            if(root.left!=null){
                threeOrders(root.left);
            }
          // 中序:找完左孩子之后即为根
            middle.add(root.val);
            if(root.right!=null){
                threeOrders(root.right);
            }
          // 后序:在找完左右孩子之后再轮到自己
            back.add(root.val);
        }
         all[0]=first.stream().mapToInt(Integer::intValue).toArray();
         all[1]= middle.stream().mapToInt(Integer::intValue).toArray();
         all[2]= back.stream().mapToInt(Integer::intValue).toArray();
        return all;
    }
}
全部评论

相关推荐

白火同学:1、简历可以浓缩成一页,简历简历先要“简”方便HR快速过滤出有效信息,再要“历”用有效信息突出个人的含金量。 2、教育背景少了入学时间~毕业时间,HR判断不出你是否为应届生。 3、如果你的平台账号效果还不错,可以把账号超链接或者用户名贴到对应位置,一是方便HR知道你是具体做了什么内容的运营,看到账号一目了然,二是口说无凭,账号为证,这更有说服力。
面试被问期望薪资时该如何...
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务