From 47b241b6b77612b790754952fefa41d614adeefd Mon Sep 17 00:00:00 2001 From: Yucheng Hu Date: Sun, 16 Dec 2018 23:17:12 -0500 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=96=87=E4=BB=B6=E7=9A=84?= =?UTF-8?q?=E5=90=8D=E7=A7=B0=EF=BC=8C=E5=9B=A0=E4=B8=BA=E8=BE=93=E5=85=A5?= =?UTF-8?q?=E7=9A=84=E5=90=8D=E7=A7=B0=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../lintcode/LintCode0069SLevelOrderTest.java | 124 ------------------ 1 file changed, 124 deletions(-) delete mode 100644 src/test/java/com/ossez/lang/tutorial/tests/lintcode/LintCode0069SLevelOrderTest.java diff --git a/src/test/java/com/ossez/lang/tutorial/tests/lintcode/LintCode0069SLevelOrderTest.java b/src/test/java/com/ossez/lang/tutorial/tests/lintcode/LintCode0069SLevelOrderTest.java deleted file mode 100644 index a9b1566edf..0000000000 --- a/src/test/java/com/ossez/lang/tutorial/tests/lintcode/LintCode0069SLevelOrderTest.java +++ /dev/null @@ -1,124 +0,0 @@ -package com.ossez.lang.tutorial.tests.lintcode; - -import java.util.ArrayList; -import java.util.LinkedList; -import java.util.List; -import java.util.Queue; - -import org.junit.Test; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import com.ossez.lang.tutorial.models.TreeNode; - -/** - *

- * 69 - *

- *

- * - * @author YuCheng - * - */ -public class LintCode0069SLevelOrderTest { - - private final static Logger logger = LoggerFactory.getLogger(LintCode0069SLevelOrderTest.class); - - /** - * - */ - @Test - public void testMain() { - logger.debug("BEGIN"); - String data = "{3,9,20,#,#,15,7}"; - - TreeNode tn = deserialize(data); - System.out.println(levelOrder(tn)); - - } - - /** - * Deserialize from array to tree - * - * @param data - * @return - */ - private TreeNode deserialize(String data) { - // NULL CHECK - if (data.equals("{}")) { - return null; - } - - ArrayList treeList = new ArrayList(); - - data = data.replace("{", ""); - data = data.replace("}", ""); - String[] vals = data.split(","); - - // INSERT ROOT - TreeNode root = new TreeNode(Integer.parseInt(vals[0])); - treeList.add(root); - - int index = 0; - boolean isLeftChild = true; - for (int i = 1; i < vals.length; i++) { - if (!vals[i].equals("#")) { - TreeNode node = new TreeNode(Integer.parseInt(vals[i])); - if (isLeftChild) { - treeList.get(index).left = node; - } else { - treeList.get(index).right = node; - } - treeList.add(node); - } - - // LEVEL - if (!isLeftChild) { - index++; - } - - // MOVE TO RIGHT OR NEXT LEVEL - isLeftChild = !isLeftChild; - } - - return root; - - } - - private List> levelOrder(TreeNode root) { - Queue queue = new LinkedList(); - List> rs = new ArrayList>(); - - // NULL CHECK - if (root == null) { - return rs; - } - - queue.offer(root); - - while (!queue.isEmpty()) { - int length = queue.size(); - List list = new ArrayList(); - - for (int i = 0; i < length; i++) { - TreeNode curTN = queue.poll(); - list.add(curTN.val); - if (curTN.left != null) { - queue.offer(curTN.left); - } - if (curTN.right != null) { - queue.offer(curTN.right); - } - } - - rs.add(list); - } - - return rs; - } -}