CodeKata. 재귀함수 - 문자열 뒤집기

ha ju·2021년 5월 30일
0
post-thumbnail

🧐 문제

재귀(Recursion)

이전에 재귀에 대해 이미 배운바 있습니다.
오늘은 재귀를 사용해서 문제를 풀어주세요.

str 이라는 'string'을 넘겨주면 글자순서를 바꿔서 return해주세요.
reverse 메서드 사용은 당연히 금지입니다!

input: 'hello'
output: 'olleh'

힌트

아래의 코드가 어색한 것은 아니겠죠?
(함수의 return에 string을 붙여서 사용하는 것)

function getName(name) {
  return name;
}

console.log(getName('김')+'님');

🧐 나의 코드

const str = "Yeonju"

const reverseString = str => {
  if(str.length ===1){
    return str
  }
  //문자열의 마지막 글자만 반복해서 가져온다.
  return str[(str.length-1)] + reverseString(str.slice(str[0],str.length-1)) //'ujnoeY'
  
}
reverseString(str)

💡 접근 방법

const reverseString = str => {
  if(str.length ===1){
    return str
  }
  //문자열의 마지막 글자만 반복해서 가져온다.
  return str[(str.length-1)] + str.slice(str[0],str.length-1)   // 'uYeonj'
  
}

재귀함수를 사용하지 않고 문자열 맨 뒷 글자만 앞으로 가지고 왔을 때 나오는 결과를 활용하여
.slice() 메서드를 재귀함수로 감싸주었다.

0개의 댓글