알고리즘 문제

[19일차] JS 프로그래머스 LV.1

잼굴 2023. 1. 24. 22:37

문제 1. 문자열 내 마음대로 정렬하기

 

 

 

풀이순서:

1. 문자를 오름차순으로 정렬한다.

2. n번째 원소 값의 비교를 통해서 정렬한다. 값이 크면 뒤로보내기

3. 주어진 문자가 같으면 문자열을 비교해서 더 큰 문자열을 뒤로 보낸다.

 

function solution(strings, n) {

  strings.sort((a, b) => {
    // a[n]이 b[n] 보다 클 경우 뒤로 보낸다.
    if (a[n] > b[n]) {
      return 1;
      // a[b]이 b[n] 보다 작을 경우 앞으로 보낸다.
    } else if (a[n] < b[n]) {
      return -1;
    } else {
      // 문자가 같을 경우 문자열을 비교해 더 큰 문자열을 뒤로 보낸다.
      if (a > b) {
        return 1;
      } else {
        return -1;
      }
    }
  });
  return strings;
}