【发布时间】:2015-10-27 11:19:24
【问题描述】:
public void delete(String key) {
root = delete(root, key, 0);
}
public Node delete(Node x, String key, int d) {
if(x == null)
return null;
if(d == key.length())
x.val = null;
else {
char c = key.charAt(d);
x.next[c] = delete(x.next[c], key, d + 1);
}
//----------------
if(x.val !=null )
return x;
for (char c = 0;c < R ; c++ ) {
if(x.next[c] != null)
return x;
return null;
}
}
来自书籍算法 4,TrieST.java
那么发生了什么? for循环可以多次返回x;返回类型方法可以吗?如果可以,那么最终的返回值是多少?
【问题讨论】:
-
这看起来像是一个错字。如果 for 循环总是在第一次迭代中返回,则不需要循环。
-
错字是什么意思?输入?
标签: java algorithm dictionary trie