判空处理

由于题中的Node的构造器其中无参和有一个参数的构造器中,关于List<Node> children可能会存在空,所以当List为空时encode的递归方法会存在空指针的问题;同理decode的递归也会存在本来是null的children被赋值为非null的空ArrayList
pull/6/head
bluecrow1986 4 years ago committed by GitHub
parent 3278552cab
commit edcfebc814
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -58,7 +58,7 @@ public class Code03_EncodeNaryTreeToBinaryTree {
cur.right = tNode;
}
cur = tNode;
cur.left = en(child.children);
cur.left = child.children != null ? en(child.children) : null;
}
return head;
}
@ -72,7 +72,7 @@ public class Code03_EncodeNaryTreeToBinaryTree {
}
public List<Node> de(TreeNode root) {
List<Node> children = new ArrayList<>();
List<Node> children = root != null ? new ArrayList<>() : null;
while (root != null) {
Node cur = new Node(root.val, de(root.left));
children.add(cur);

Loading…
Cancel
Save