Algorithm Study With Java #3 (JAVA SORT)

jakeseo_me·2019년 2월 12일
0

java algorithm study

목록 보기
3/18

정렬

  • 배열 정렬
    - Arrays.sort
  • 콜렉션 정렬
    - Collections.sort

오름차순 정렬하기

  • ArrayList를 이용하는 방법
  • 예제 코드 }
  • Array를 이용하는 방법
  • 예제 코드 }

좌표 정렬하기

  • 클래스를 정렬하는 순간 정렬이 조금 어려워짐
  • 문제 링크 : boj.kr/11650
  • (x, y)가 여러 개 있을 때, x가 증가하는 순으로 정렬하는 문제
    - 하지만 만일 x가 같다면 y가 증가하는 순서로 정렬하는 문제
  • Comparator나 Comparable을 작성해야 한다.
    - 하지만 둘 다 작성할 필요는 없다.
    - 둘 중 하나만 작성하면 된다.
  • Comparable의 구현
    - java.lang.Comparable< T>
    - Comparable은 compareTo 메소드를 작성하면 된다.
  • compareTo의 구현
    • 작성 예제
  • Comparator의 구현
    - java.util.Comparator< T>
  • 예제 코드 1 Comparable
    - 따로 sort method를 구현할 필요가 없다.
  • 예제 코드 2 Comparator
    • sort method 2번째 인자로 어떻게 정렬할 것인지를 넣어주는 과정이 필요

Comparable과 Comparator의 의미

  • Comparable은 compareTo를 구현하는데, natural순서를 정의한다.
    - natural순서란 이를테면 문자열의 사전순과 같은 정석적인 순서를 의미한다.
  • Comparator는 다른 순서로 정렬하고 싶을 때 사용한다.
    - 이를테면 문자열을 길이 순으로 정렬하고 싶을 때 사용한다.
profile
대전에 있는 (주) 아이와즈에서 풀스택 웹개발자로 일하고 있는 서진규입니다. 주로 Jake Seo라는 닉네임을 많이 씁니다.

0개의 댓글