코딩 테스트/프로그래머스 level2

튜플

fullfish 2022. 9. 11. 00:37

문제가 설명이 부족한데

결과값은 입출력 예에서 가장많이 나온 문자열이 index 0에 가깝에 위치되어야한다

 

코드

function solution(s) {
  let obj = {};
  let resultArr = [];
  s = s.replace(/[{}]/g, "").split(",");
  for (let i = 0; i < s.length; i++) {
    if (s[i] in obj) obj[s[i]]++;
    else obj[s[i]] = 1;
  }

  let arr = Object.entries(obj);
  arr.sort((a, b) => b[1] - a[1]);
  for (let i = 0; i < arr.length; i++) {
    resultArr.push(parseInt(arr[i][0]));
  }
  return resultArr;
}

정규식으로 배열화한 후

객체로 각 숫자가 몇개씩 있는지 저장

해당 객체를 Object.entries()로 배열화 (해당 메소드로 배열화하면

{a:1}과 같은것이 [a,1]처럼 배열화 된다

내림차순으로 해서 품

'코딩 테스트 > 프로그래머스 level2' 카테고리의 다른 글

n^2 배열 자르기  (0) 2022.09.11
위장  (0) 2022.09.11
괄호 회전하기  (0) 2022.09.10
H-Index  (0) 2022.09.10
점프와 순간 이동  (0) 2022.09.10