[STUDY] 정렬 라이브러리(Library Sort) 230829

SKY·2023년 8월 29일
0

JS Coding Test Study

목록 보기
2/20

~51일차~

JavaScript 정렬 라이브러리

정렬 기능이 필요할 때 매우 효율적으로 사용 가능

  • sort() : JavaScript에서 제공, 배열에 포함된 데이터를 정렬하는 함수
  • 알고리즘 및 코딩 테스트 문제를 해결할 때 정렬 기능이 필요하다면 사용 권장

1. 사용방법

다음과 같은 형태로 사용 가능

arr.sort(compareFunction);

  • 내림차순, 오름차순 등 구체적인 정렬 가능
  • compareFunction : 정렬기준을 정해주는 함수

2. 정렬 기준 함수( Compare Function )

  • 두개의 원소 a,b를 입력으로 받는다
  • 참고 사항 : 정렬 기준함수를 사용하지 않으면 각 원소는 문자열로 취급
  • 유니코드 값 순서대로 정렬
  • sort() 사용 시 Compare Function를 사용하는 것이 좋다

3. 정수에 대한 오름차순 정렬 예시

arr.sort(function (a,b) {
  return a - b;
});

4. 정수에 대한 내림차순 정렬 예시

function compare(a, b) {
  return b - a;
};

arr.sort(compare);

5. 문자열에 대한 오름차순 정렬 예시

  • 별도로 비교함수 사용하지 않으면 유니코드 순으로 정렬
  • 따라서 함수 적용 없이 간단한 문자열 정렬 수행 가능
arr.sort();

6. 문자열에 대한 내림차순 정렬 예시

function compare(a,b) {
if (a > b) return -1;
else if (a < b) return 1;
else return 0;

arr.sort(compare);
}

7. 문자열에 대한 오름차순 정렬 예시(대소문자 구분 X)

function compare(a,b) {
let upperCaseA = a.toUpperCase();
let upperCaseB = b.toUpperCase();
if (upperCaseA  > upperCaseB ) return -1;
else if (upperCaseA < upperCaseB ) return 1;
else return 0;

arr.sort(compare);
}

8. 객체에 대하여 원하는 기준으로 오름차순 정렬 예시

let arr =[
  { name:"홍길동", score:90 },
  { name:"김철수", score:85 }
]

function compare(a, b) {
  return b.score - a.score;
}
arr.sort(compare);

0개의 댓글