删除字典内容
来源:10-8 基于哈希表或者数组的Trie
慕斯卡6077156
2021-02-16
相关截图:

问题描述:比如我输入的是apot字符串,在字典树里删除字符串为什么root里还是有这个字符串。
写回答
1回答
-
liuyubobobo
2021-02-16
我没有理解你的问题和你的截图中画的红线是什么关系?
但是课程提供的补充代码是没有问题的。使用如下程序程序测试,会先得到 true,再得到 false。如果你在两个 out 的地方添加断点,会看到一个地方的 trie 包含 apot 这个单词相应的节点,第二个 out 部分 trie 已经没有了相应的节点。
public static void main(String[] args) { Trie trie = new Trie(); trie.add("apot"); System.out.println(trie.contains("apot")); trie.remove("apot"); System.out.println(trie.contains("apot")); }我直接将这个测试用例添加到了课程的官方代码中,你直接下载运行课程的官方代码,应该就可以在本地的环境下试验出相应的结果。
请测试在你的环境下运行课程的官方代码,是否有问题?如果没有问题,请仔细调试比较,看看自己的代码哪里有问题。
trie remove 非递归代码传送门:https://git.imooc.com/coding-207/coding-207/src/master/10-Trie/Optional-02-Trie-Delete/src/Trie.java
trie remove 递归代码传送门:https://git.imooc.com/coding-207/coding-207/src/master/10-Trie/Optional-02-Trie-Delete/src/TrieR.java
继续加油!:)
00
相似问题