程式設計之美之電話號碼對應英語單詞
題目一:根據電話上字母和數字的對應關係,用一個有意義的單詞來表述一個電話號碼,如用computer表示26678837
題目二:反過來,給定一個電話號碼,是否可以用一個單詞來表示呢?怎樣表示最快呢?顯然不是所有的電話號碼都可以對應到單詞上去
首先來看看leetcode上一個類似的題目:
Letter Combinations of a Phone Number
Given a digit string, return all possible letter combinations that the number could represent.
A mapping of digit to letters (just like on the telephone buttons) is given below.
Input:Digit string "23" Output: ["ad", "ae", "af", "bd", "be", "bf", "cd", "ce", "cf"].
Note:
Although the above answer is in lexicographical order, your answer could be in any order you want.
class Solution {
public:
void letterCombinations(string& digits,int index,string* map,string words,vector<string>& res)
{
if(index == digits.size())//得到一個結果
{
res.push_back(words);
return;
}
int i;
for(i = 0; i < map[digits[index] - '0'].size();++i)//取第index個數字上的每一個字元,進行深度遞迴
{
letterCombinations(digits,index + 1,map,words+map[digits[index] - '0'][i],res);
}
}
vector<string> letterCombinations(string digits) {
string map[10] = {"","","abc","def","ghi","jkl","mno","pqrs","tuv","wxyz"};//數字和字母的對應關係
vector<string> res;
letterCombinations(digits,0,map,"",res);
return res;
}
};
根據這個題目,上面的兩個問題就比較簡單了,正如程式設計之美上說的:對於問題二,我們找出該電話所有可能組合,然後去匹配字典,判斷是否有答案。當然,如果查詢的次數比較多,可直接把字典裡的所有單詞都按照這種轉化關係對映成數字,並儲存到檔案中,然後對這個電話號碼按照查表的方式來得到結果。
相關文章
- 英語單詞_英語二_2011
- 英語,對程式設計師有多重要?程式設計師
- Python 英語單詞本Python
- 英語背單詞祕籍
- 英語初級單詞(七)
- 英語背單詞 專四詞彙 中英對照 2024年09月
- 最全的前端程式設計師常用英語詞彙都在這了~前端程式設計師
- 密碼學之專業英語密碼學
- 這些單詞你都念對了嗎?順便推薦三份程式設計師專屬英語教程!程式設計師
- 當了程式設計師之後?(真心話)程式設計師
- 電商系統設計之訂單
- 實用乾貨:程式設計師必備的常用英語詞彙程式設計師
- 對話IT精英女性,領略技術之美
- C 語言程式設計利器之 CLion程式設計
- shell程式設計之條件語句程式設計
- 文字挖掘之語料庫、分詞、詞頻統計分詞
- Go併發程式設計之美-CAS操作Go程式設計
- Go併發程式設計之美-互斥鎖Go程式設計
- 英語第三單元詞彙卷
- 【SQL】Oracle程式設計藝術指令碼學習之runsat(語句執行消耗對比)SQLOracle程式設計指令碼
- 01 Python3程式設計之程式設計語法簡介Python程式設計
- 02 shell程式設計之條件語句程式設計
- 04 shell程式設計之迴圈語句程式設計
- 如何記憶英語單詞ward的意思
- 程式設計師如何提升英語水平程式設計師
- 程式設計師英語學習指南程式設計師
- 英語不好能學程式設計嗎?程式設計
- 英語背單詞專案(資料庫中是4級單詞)資料庫
- JAVA程式設計習慣之equals對比Java程式設計
- 程式設計入門之學哪種程式語言?程式設計
- 作為程式設計師,你英語可以不過4級,但是這些單詞你要能看懂!程式設計師
- JavaScript函數語言程式設計之pointfree與宣告式程式設計JavaScript函數程式設計
- 簡單學:併發程式設計之 ThreadLocal程式設計thread
- Java-GUI程式設計之選單元件JavaGUI程式設計元件
- 為了收集和整理程式設計的常用單詞,我寫了個背單詞應用程式設計
- 品味Spring Cache設計之美Spring
- 響應式程式設計簡介之:Reactor程式設計React
- 程式設計師之間的搞笑對話!測試妹子弄得大家好尷尬!程式設計師
- iOS音訊程式設計之實時語音通訊(對講機功能)iOS音訊程式設計