GeezerVisonThe World Wide Web, restored to 800 pixels of glory. |
| Home|About|Gaming cabinet|Archives|How it works|Starter sites |
GeezerVison is showing github.com — LeetCode_algorithm/Level_Order.java at master · rpj911/LeetCode_algorithm Expand file tree/ Copy pathLevel_Order.javaMore file actions 60 lines (41 loc) · 1.77 KB / Copy pathLevel_Order.javaFile metadata and controls60 lines (41 loc) · 1.77 KB 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 package Algorithms; import java.util.ArrayDeque; import java.util.ArrayList; import java.util.Queue; public class Level_Order { public ArrayList<ArrayList<Integer>> levelOrder(TreeNode root) { ArrayList<ArrayList<Integer>> levelOrder = new ArrayList<ArrayList<Integer>>(); if (root == null){ return levelOrder; } // record the level of the tree. 0: root. //int level = 0; Queue<TreeNode> queue = new ArrayDeque<TreeNode>(); // add the root to the queue. queue.add(root); // init the 0 level of the order. //levelOrder[level] = new ArrayList<Integer>; // get all the elements out from the queue. while(!queue.isEmpty()){ // get the size of this level; int size = queue.size(); ArrayList<Integer> tmpList = new ArrayList<Integer>(); levelOrder.add(tmpList); // add this level to the array and store all the elements in the next level. for(int i = 0; i < size; i++){ TreeNode currElement = queue.remove(); // add all the element in this level to the arraylist. tmpList.add(currElement.val); // add all the element in the next level to the queue. if(currElement.left != null){ queue.add(currElement.left); } if(currElement.right != null){ queue.add(currElement.right); } } //level ++; } return levelOrder; } } |
| You are visitor 01402520 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |