JAVA/JAVA Algorithm, Datastruct
[JAVA] Arrays.sort() Collection.sort() 정렬 알고리즘
Java에서 정렬에 대해서 크게 Arrays.sort()와 Collection.sort()가 존재하는데 이 두 메서드는 내부 구현에 차이가 있어 정리를 하고자 한다.Arrays.sort()배열을 정리하는데 사용된다. 원시 타입 배열(int[], char[], etc.)와 객체 배열(String[], Integer[], etc.) 모두 정렬할 수 있다.정렬 방식원시 타입 배열의 경우, Dual-Pivot Quicksort 객체 배열의 경우, TimSortCollection.sort()List를 정렬하는데 사용되어 List 인터페이스를 구현한 모든 컬렉션(ArrayList, LinkedList 등)을 정렬할 수 있다.정렬방식TimSort 방식으로 정렬을 하는데 TimSort를 정렬에 Arrays.sort()..
[Algorithm] JAVA 코드업 기초 100제 (기초-1차원배열, 2차원배열) 1093 ~ 1099
1093 : [기초-1차원배열] 이상한 출석 번호 부르기1(설명) public static void main(String[] args) { Scanner sc = new Scanner(System.in); String s1 = sc.nextLine(); String s2 = sc.nextLine(); int[] array = new int[23]; int[] call = Arrays.stream(s2.split(" ")) .mapToInt(Integer::parseInt) .toArray(); for(int i=0; i
[Algorithm] JAVA 코드업 기초 100제 (기초-종합) 1078 ~ 1092
1078 : [기초-종합] 짝수 합 구하기(설명) public static void main(String[] args) { Scanner sc = new Scanner(System.in); int s = sc.nextInt(); int sum=0; for(int i=0; i
[Algorithm] JAVA 코드업 기초 100제 (기초-반복실행구조) 1071 ~ 1077
1071 : [기초-반복실행구조] 0 입력될 때까지 무한 출력하기1(설명) public static void main(String[] args) { Scanner sc = new Scanner(System.in); String s = sc.nextLine(); String[] array = s.split(" "); for(String x : array) { if(!x.equals("0")) { System.out.println(x); }else { break; } } } 1072 : [기초-반복실행구조] 정수 입력받아 계속 출력하기(설명) public static void main(String[] args) { Scanner sc = new Scanner(System.in); int key = sc.ne..
[Algorithm] JAVA 코드업 기초 100제 (기초-삼항연산, 선택실행 구조) 1063 ~ 1070
1063 : [기초-삼항연산] 두 정수 입력받아 큰 수 출력하기(설명) public static void main(String[] args) { Scanner sc = new Scanner(System.in); String s = sc.nextLine(); String[] data = s.split(" "); int a = Integer.valueOf(data[0]); int b = Integer.valueOf(data[1]); System.out.printf("%d", a>b?a:b); } 1064 : [기초-삼항연산] 정수 3개 입력받아 가장 작은 수 출력하기(설명) public static void main(String[] args) { Scanner sc = new Scanner(System.in..