可能的組合並轉換成 JavaScript 中的字母演算法
假設我們給定對映 a = 1, b = 2, ... z = 26,以及一條編碼訊息。我們要求編寫一個 JavaScript 函式來接受訊息。
該函式應該計算出可以解碼它的方法數。
例如,訊息“111”將給出 3,因為它可以解碼為“aaa”、“ka”和“ak”。
示例
程式碼如下 −
const waysToProcess = ( message, ways = 0 ) => {
if ( message.length ) {
ways = waysToProcess( message.slice( 1 ,message.length), ways );
const numCurr = parseInt( message[0] );
const numNext = "undefined" === typeof message[1] ? null :
parseInt(message[1]);
if ( numCurr && numNext
&& numCurr < 3
&& ( numCurr + numNext ) < 27
) {
ways = waysToProcess( message.slice( 2 ,message.length), ways );
}
} else {
ways++;
}
return ways;
}
console.log(waysToProcess('111'));輸出
而控制檯中的輸出將是 −
3
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP