我在做一个Anagram Finder程序。我正在编写的方法之一介绍了递归回溯的概念,我对此完全陌生。我希望能得到一些关于这是如何工作/如何使它工作的建议。
我试图实现递归回溯,以便显示字典文本文件中的单词列表,以形成输入短语的字谜。到目前为止,我的情况如下:
public void printAnagrams(String phrase, int max, List<List<String>> anagrams) {
if (anagrams == null) {
throw new IllegalArgumentException();
} else if (max != 0) {
System.out.println("...");
} else
System.out.println("...");
for (List<String> element : anagrams)
System.out.println(anagrams);
}// End of printAnagram method 如果max > 0,则只显示最大单词的组合或更少的单词。由于程序很长,背景信息列在下面的链接中。
AnagramFinder类:原始代码
Client类:原始代码
这是预期的结果:
文件名?dict2.txt
词组乱动?偏离航线
在“非课程”中发现的所有单词:核心,课程,cs,治疗,为,武力,力量,4,of,off,提议,提议,或者,我们,再,分数,所以,来源,痛苦,确定,我们,使用,用户
最多要包含的单词(不输入最大值)?3
核心,关闭,我们
核心,我们,离开
航向,取消
治愈,关闭,所以
治愈,所以,离开
力量,力量,我们
武力,我们,
我们的,武力
我们,武力
离开,核心,我们
离开,当然
走了,治愈了,所以
关闭,那么,治愈
关闭,源
离开,我们,核心
所以,治愈,关闭
所以,关闭,治愈
源,关闭
我们,核心,关闭
我们,武力
我们,的,武力
我们,关闭,核心
发布于 2016-06-27 07:47:52
尝试使用链接列表而不是list>,这样会更好,更容易理解
https://stackoverflow.com/questions/37520423
复制相似问题