알고리즘 문제: 첫 번째 문자를 대문자로

2835 단어
문자열에서 각 단어의 첫 번째 문자를 대문자로 바꿔야 하는 또 다른 알고리즘 문제를 살펴보겠습니다. 문제는 작은 단계로 나눌 수 있을 때 항상 가장 명확하기 때문에 오늘 우리가 살펴볼 이 솔루션은 나에게 가장 의미가 있습니다.

문제

문자열이 주어지고 각 단어의 첫 글자를 대문자로 하여 문자열을 반환하라는 요청을 받습니다.

전.

capitalize("capitalize every word");
//Output is -> "Capitalize Every Word"

전체 단어가 아닌 단어의 첫 글자만 대문자로 표시해야 합니다. 문자열도 반환해야 함을 기억하십시오.

접근하다

문자열 데이터 유형으로 시작하고 데이터를 반복할 것임을 알고 있으므로 먼저 문자열을 배열로 변환하는 것이 유용할 것입니다. 문자열을 배열로 변환하기 위해 .split() 메서드를 사용하고 있습니다. 문자열을 개별 문자가 아닌 단어로 분할할 것이므로 split 메소드의 인수로 공백 ' '을 삽입해야 합니다. 단어 배열이 있으면 배열을 반복하고 첫 글자를 대문자로 변경하여 각 단어를 변경합니다.

대문자를 사용하기 위해 각 단어의 첫 글자에 .toUpperCase() 메서드를 사용합니다. 그것은 우리에게 첫 글자만 제공합니다. 이제 나머지 단어가 필요하며 이 단계에서 .slice() 메서드를 사용할 수 있습니다. 단어를 대문자로 표시하고 다시 결합한 후에는 .push() 메서드를 사용하여 해당 단어를 빈 배열에 추가합니다. 한 번 비어 있는 배열에는 새로 대문자로 된 모든 단어가 포함되지만 아직 완료되지 않았습니다. 배열을 다시 문자열로 변환해야 하며 .join() 메서드를 사용합니다. 처음에 분할했던 방식과 유사하게 ' ' 공백으로 결합해야 합니다.

해결책

먼저 모든 대문자 단어를 푸시할 빈 배열을 만듭니다.

capitalize(string) {
  const stringArray = []; 
}

다음으로 문자열에서 얻은 배열을 반복합니다.

capitalize(string) {
  const stringArray = [];

  for (let word of string.split(' ')) {
   //We will do work on the array on this line
  }
}

우리는 각 단어를 취하고 단어의 첫 글자를 대문자로 할 것입니다. 다음으로 .slice() 메서드를 사용하여 얻은 나머지 단어와 결합합니다. 시작 인덱스만 인수로 전달하면 .slice() 두 번째 문자부터 단어 끝까지 단어를 제공합니다.

capitalize(string) {
  const stringArray = [];

  for (let word of string.split(' ')) {
    word[0].toUpperCase() + word.slice(1)
  }
}

새로 대문자로 된 단어는 살 곳이 필요하므로 .push() 메서드를 사용하여 현재 비어 있는 stringArray에 가져옵니다.

capitalize(string) {
  const stringArray = [];

  for (let word of string.split(' ')) {
    stringArray.push(word[0].toUpperCase() + word.slice(1))
  }

}

마지막으로 문자열을 답으로 원하기 때문에 stringArray를 문자열 형식으로 반환해야 합니다. .join()를 사용하여 새로 대문자로 된 문자열을 얻습니다. for 루프의 끝과 외부에서 반환해야 합니다.

capitalize(string) {
  const stringArray = [];

  for (let word of string.split(' ')) {
    stringArray.push(word[0].toUpperCase() + word.slice(1))
  }
  return stringArray.join(' ');
}

자원

Stephen Grider's Algorithms and Data Structures Udemy Course

Interview Cake

좋은 웹페이지 즐겨찾기