본문 바로가기
알고리즘

Daily Coding 04. firstCharacter

by 디디 ( DD ) 2023. 1. 24.

Q. 문자열을 입력받아 문자열을 구성하는 각 단어의 첫 글자로 이루어진 문자열을 리턴해야 합니다.

 

 

//나의 풀이

function firstCharacter(str) {
  let arr = str.split(' ');  //띄어쓰기 기준으로 잘라서 배열 만들기
  let result = '';
  for(let i = 0; i < arr.length; i++) {
    result = result + arr[i].slice(0, 1);  //배열 각 요소의 첫 번째 글자만 골라 붙이기
  }
  return result;
}

 

 

//레퍼런스 코드

function firstCharacter(str) {
  if (str === '') {
    return '';
  }

  let words = str.split(' ');
  let result = '';
  for (let i = 0; i < words.length; i += 1) {
    result = result + words[i][0];
  }
  return result;
}

 레퍼런스 풀이에는 빈 문자열을 입력받은 경우, 빈 문자열을 리턴해야 하는 부분을 따로 써 놨는데, 굳이 그럴 필요는 없을 것 같다. 그 부분이 없어도 입력값이 빈 문자열인 경우, for 문을 돌지 않게 되고, 결국 빈 문자열인 result를 반환하게 되기 때문이다.

 그리고 나는 새로 만든 배열의 요소들을 잘라서 활용했는데, 레퍼런스 코드처럼 배열의 인덱스와 문자열의 인덱스를 이용하여 접근하는 방식도 괜찮은 것 같다.

 

 

 

 

 

'알고리즘' 카테고리의 다른 글

Daily Coding 06. letterCapitalize  (0) 2023.01.25
Daily Coding 05. firstReverse  (0) 2023.01.25
Daily Coding 03. powerOfTwo  (0) 2023.01.24
Daily Coding 02. computeWhenDouble  (0) 2023.01.23
Daily Coding 01. transformFirstAndLast  (0) 2023.01.23

댓글