劍指offer 把數字轉換成字串(動態規劃)

2021-08-22 12:12:00 字數 727 閱讀 9326

題目:給定乙個數字,我們按照如下規則把它翻譯為字串:0翻譯成「a」,1翻譯成「b」,·······,25翻譯成「z」。乙個數字可能有多個翻譯。例如,12258有5種不同的翻譯,分別是「bccfi」、"bwfi"、"bczi"、"mcfi"和"mzi"。請程式設計實現乙個函式,用來計算乙個數字有多少種不同的翻譯方法。

思想:本題可以用自上而下(即從前往後遞迴的方式),將12258分為1, 2258和12,258的方式然後分別算出兩種情況下的種類數

但在計算1,2258時,我們會發現,2258可以分為2,258和22,58其中與12,258中的情況有重複,為了避免重複,可以從後往前計算(即自下而上),有點像動態規劃的思想。

#include #include using namespace std;

int gettranslationcount(int num);

int gettranslationcount(const string& num);

int main()

return 0;

}int gettranslationcount(int num)

int gettranslationcount(const string& num)

}counts[i] = count;

}count = counts[0];

delete counts;

return count;

}

劍指Offer 49 把字元轉換成數字

題目 乙個字串轉換成乙個整數 實現integer.valueof string 的功能,但是string不符合數字要求時返回0 要求不能使用字串轉換整數的庫函式。數值為0或者字串不是乙個合法的數值則返回0。輸入描述 輸入乙個字串,包括數字字母符號,可以為空 輸出描述 如果是合法的數值表達則返回該數字...

劍指offer 把字串轉換成整數

字串轉成整數的核心 很簡單,但是需要考慮的各種情況很多。1 首位 的判斷。2 在 的溢位判斷。3 null 空字串的判斷。4 數字後面出現了很多非數字的情況。atoi函式是講前面的數字儲存下來,劍指offer 的 則是返回0。兩種情況都說的通,視情況而定吧。5 開頭出現了很多非數字,中間摻雜著數字的...

《劍指offer》 把字串轉換成整數

題目描述 將乙個字串轉換成乙個整數,要求不能使用字串轉換整數的庫函式。這種題目交代不清楚,也沒啥技巧含量和思考價值,既然出現了,就順帶著做一下吧。code t 把字串轉換成整數 題目描述 將乙個字串轉換成乙個整數,要求不能使用字串轉換整數的庫函式。date 2015.12.10 20 17 auth...