알고리즘 : 숫자 reverse하기

dory·2021년 4월 27일
0

알고리즘

목록 보기
2/7

문제

reverse 함수에 정수인 숫자를 인자로 받습니다.
그 숫자를 뒤집어서 return해주세요.

x: 숫자
return: 뒤집어진 숫자를 반환!

예들 들어,
x: 1234
return: 4321
x: -1234
return: -4321
x: 1230
return: 321

풀이

const reverse = x => {
  let stringX = String(Math.abs(x))
  const splitX =  stringX.split(``)
  const reversedX = splitX.reverse().join(``)
  
  return (x>=0? reversedX : (-reversedX) )
}

인덱스가 있는 array로 접근하고 싶다는 생각에 x의 절대값을 문자형으로 바꾸고, split을 사용하여 문자 단위로 배열에 넣었다. 그리고 순서를 reverse하여 재정렬하고, join을 사용하여 array에서 문자열로 변환했다.

그 후에는 절대값으로 치환된 x에게 다시 양수인지 음수인지에 따라 -1을 곱해주었다.

Math.abs()
주어진 숫자의 절대값을 반환하는 함수
String.prototype.split()
주어진 문자열을 separator마다 끊은 부분 문자열을 담은 Array를 반환
Array.prototype.reverse()
배열의 순서를 반전
Array.prototype.join()
배열의 모든 요소를 연결하여 하나의 문자열로 반환

조건문 삼항 연산자
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Operators/Conditional_Operator

0개의 댓글