拼寫的所有可能的話所以我必須找到可以使用分配給一個撥號盤的每個數字字母的電話號碼拼寫所有可能的組合。即:222 6262可以拼寫「A BANANA」。邏輯的發現,可以用一個電話號碼上的撥號盤
鑑於任意數量的任意長度的< 8,我能找到的所有匹配整數的話。即,findWholeWord(dictionary[2], 723)
會給我一串字符串{"RAD", "RAE", "RAF", "SAD", "SBF", "PAE", "PAD"}
(我給出的字典有點愚蠢......)。我的詞典分成7部分,每部分包含相同長度的單詞。
我不確定如何取一個7位數的數字並給出所有的字組合,如一個字長6,一個字長1(6,1),5,2,5和1以及1,4和3,4和2和1.我想扔掉任何不包含整個單詞的任何內容(0或1的任何內容,3個字母和2個字母的單詞與最後2個字母不匹配)。我不知道如何去做這個邏輯。我很確定這種邏輯有一個名字,因爲我畫出了一棵樹,它有一個很好的模式,但我不知道該模式被稱爲什麼,或者它叫什麼。 (7),(6,1),(5,6),(6),(7),(6),(6),(6),(6),(6),(5) 2),(5,1,1),(4,3),(4,2,1),(4,1,2),(4,1,1,1)等...
不知道該怎麼做,不知道哪一個會更容易,不知道哪一個會最有效。
我得到了1和2(我實際上做的是我使用Arrays.sort和自定義比較器對基於數值的字典進行了排序;然後我通過將字典轉換爲這些數字來進行單獨搜索(現在按升序排列),並使用Arrays.binarySearch進行二進制搜索)。但是,我不確定它是3還是4。我對你在做什麼有一個模糊的想法,但我不確定細節。 – fhyve
我現在給出一個Sudo代碼 –
好吧,我很確定我理解邏輯,特別是定義possibleWords和restOfPossibleWords的行。不幸的是,我對ArrayLists完全不熟悉。這需要很多修改才能使用數組? – fhyve