/** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) { val = x; } * } */classSolution{publicList<List<Integer>>levelOrder(TreeNoderoot){List<List<Integer>>ans=newArrayList<>();if(root==null){returnans;}Deque<TreeNode>q=newArrayDeque<>();q.offer(root);while(!q.isEmpty()){List<Integer>t=newArrayList<>();for(intn=q.size();n>0;--n){TreeNodenode=q.poll();t.add(node.val);if(node.left!=null){q.offer(node.left);}if(node.right!=null){q.offer(node.right);}}ans.add(t);}returnans;}}
/** * Definition for a binary tree node. * type TreeNode struct { * Val int * Left *TreeNode * Right *TreeNode * } */funclevelOrder(root*TreeNode)(ans[][]int){ifroot==nil{return}q:=[]*TreeNode{root}forlen(q)>0{t:=[]int{}forn:=len(q);n>0;n--{node:=q[0]q=q[1:]t=append(t,node.Val)ifnode.Left!=nil{q=append(q,node.Left)}ifnode.Right!=nil{q=append(q,node.Right)}}ans=append(ans,t)}return}
/** * Definition for a binary tree node. * public class TreeNode { * public int val; * public TreeNode left; * public TreeNode right; * public TreeNode(int x) { val = x; } * } */publicclassSolution{publicIList<IList<int>>LevelOrder(TreeNoderoot){if(root==null){returnnewList<IList<int>>();}Queue<TreeNode>q=newQueue<TreeNode>();q.Enqueue(root);List<IList<int>>ans=newList<IList<int>>();while(q.Count!=0){List<int>tmp=newList<int>();intx=q.Count;for(inti=0;i<x;i++){TreeNodenode=q.Dequeue();tmp.Add(node.val);if(node.left!=null){q.Enqueue(node.left);}if(node.right!=null){q.Enqueue(node.right);}}ans.Add(tmp);}returnans;}}