题解 | #求二叉树的层序遍历#

求二叉树的层序遍历

http://www.nowcoder.com/practice/04a5560e43e24e9db4595865dc9c63a3

import java.util.*;

/*

  • public class TreeNode {
  • int val = 0;
  • TreeNode left = null;
  • TreeNode right = null;
  • } / import java.util.; public class Solution { /** *
    • @param root TreeNode类
    • @return int整型ArrayList<ArrayList<>> */ public ArrayList<ArrayList> levelOrder (TreeNode root) { ArrayList<ArrayList> arrayLists = new ArrayList<>(); if(root == null) return arrayLists; //TODO write code here LinkedList queue = new LinkedList<>(); queue.offer(root); return loop(queue, arrayLists); } private ArrayList<ArrayList> loop(Queue queue, ArrayList<ArrayList> arrayLists){ ArrayList list = new ArrayList<>(); LinkedList curQueue = new LinkedList<>(); while (!queue.isEmpty()){ TreeNode rootNode = queue.poll(); if(rootNode.left != null) curQueue.offer(rootNode.left); if(rootNode.right != null) curQueue.offer(rootNode.right); list.add(rootNode.val); } if(!list.isEmpty()) arrayLists.add(list); if(curQueue.isEmpty()) return arrayLists; return loop(curQueue, arrayLists); } }
全部评论

相关推荐

那一天的Java_J...:他本来公司就是做这个的,不就是正常的游戏客户端和服务器开发,软硬件联动,有啥恶心不恶心的,提前告诉你就是怕你接受不了,接受不了就没必要再往后走流程浪费时间,虽然这公司是一坨。
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

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