Computer >> Máy Tính >  >> Lập trình >> Javascript

Các kết hợp có thể có và chuyển đổi thành thuật toán bảng chữ cái trong JavaScript


Giả sử chúng ta được cung cấp ánh xạ a =1, b =2, ... z =26 và một thông điệp được mã hóa. Chúng tôi được yêu cầu viết một hàm JavaScript có trong thông báo.

Hàm phải đếm số cách nó có thể được giải mã.

Ví dụ:thông báo '111' sẽ cho 3, vì nó có thể được giải mã thành 'aaa,' ka 'và' ak '.

Ví dụ

Mã cho điều này sẽ là -

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'));

Đầu ra

Và đầu ra trong bảng điều khiển sẽ là -

3