【问题标题】:Recursive Backtracking to Display a List of Words递归回溯以显示单词列表
【发布时间】:2016-09-27 23:22:45
【问题描述】:

我正在开发一个 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,则仅显示 max words 或更少的组合。 由于程序很长,背景信息列在下面的链接中。

AnagramFinder 类:raw code

客户端类:raw code

这是预期的结果:

文件名? dict2.txt

要打乱的短语?偏题了

在“off course”中找到的所有单词: [core,course,cs,cure,for,force,forces,四,of,off,offer,offer,or,our,ours,re,score,so,source,sun,sure,us,use,user]

要包含的最大字数(输入没有最大字数)? 3

[核心,关闭,我们]

[核心,我们,关闭]

[当然,关闭]

[治愈,关闭,所以]

[治愈,所以,关]

[力量,的,我们]

[力,我们,的]

[的,力量,我们]

[我们的,力量]

[关闭,核心,我们]

[关闭,当然]

[关闭,治愈,所以]

[关闭,所以,治愈]

[关闭,来源]

[关闭,我们,核心]

[所以,治愈,关闭]

[所以,关闭,治愈]

[来源,关闭]

[我们,核心,关闭]

[我们,力量,的]

[我们,的,力量]

[我们,关闭,核心]

【问题讨论】:

    标签: java string list recursion


    【解决方案1】:

    尽量用链表代替列表>这样更好更容易理解

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-12-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多