버블 정렬(Bubble sort)서로 인접한 두 수를 비교하여 정렬하는 알고리즘이다. 시간복잡도 : O(n2) public void bubble_sort(int arr[], int n) { for (int i = n - 1; i > 0; i--) { for (int j = 0; j arr[j + 1]) { int tmp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = tmp; }}}} 선택 정렬(Seleciton sort)① 정렬되지 않은 부분 중 최소값을 찾는다.② 그 값을 정렬되지 않은 부분의 맨 앞의 수와 교체한다.③ 정렬된 ..
10825번: 국영수 첫째 줄에 도현이네 반의 학생의 수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 한 줄에 하나씩 각 학생의 이름, 국어, 영어, 수학 점수가 공백으로 구분해 주어진다. 점수는 1보다 크거나 같고, 1 www.acmicpc.net 단순히 이중 for문으로 해결하면 시간초과 뜨는 문제다. 그리디 알고리즘 할 때 배웠던 Comparable 인터페이스를 이용해 해결하였다. Comparable에서 compareTo는 정렬하는 기준을 잡아주는 메서드이다. public int compareTo(Grade o) { /* 국어 점수기준으로 내림차순 정렬. 값이 같다면 영어점수 기준으로 * 오름차순 같다면 수학점수 기준으로 내림차순. 마지막 이름 사전식 정렬 */ if (this.ko..