Find the missing letter

Find the missing letter

Write a method that takes an array of consecutive (increasing) letters as input and that returns the missing letter in the array.

You will always get an valid array. And it will be always exactly one letter be missing. The length of the array will always be at least 2. The array will always contain letters in only one case.

Example: ['a','b','c','d','f'] -> 'e' ['O','Q','R','S'] -> 'P'

배열의 순차적으로 나열된 알파벳 중 누락된 알파벳을 찾는 간단한 문제입니다. fromCharCode method와 String prototype method인 charCodeAt을 연습하기 좋은 문제입니다.

저의 경우 배열의 첫 요소(string)의 UTF-16 코드를 iteration의 시작으로, 끝 문자의 UTF-16 코드를 반복문의 끝으로 지정해 누락된 문자를 검토 후 반환하는 방식으로 문제를 풀었습니다.

function findMissingLetter(array) {
  var num = array[0].charCodeAt();
  var end = array[array.length - 1].charCodeAt();
  for (var i = num; i <= end; i++) {
    if (array.indexOf(String.fromCharCode(i)) < 0) {
      return String.fromCharCode(i);
    }
  }
}

String.protorype.charCodeAt()은 주어진 인덱스에 대한 UTF-16코드를 반환합니다. 인덱스가 없는 경우 0을 기본값으로 합니다.

String.fromCharCode() method는 전달받은 UTF-16코드를 변환한 문자를 반환합니다. 여러 개의 UTF-16코드를 인자로 전달할 수 있습니다.