삽입정렬 삽입소트 insertSort 자바구현
- JAVA/JAVA 프로그래밍
- 2018. 4. 28. 02:02
삽입정렬 삽입소트 insertSort 자바구현
삽입정렬을 배열로 구현하는 경우 삽입 후 요소의 위치이동에 따른 연산이 복잡하기 때문에 리스트로 구현하는게 훨씬 간단하고 효율도 좋다. 아래는 배열로 구현하는 경우와 리스트로 구현하는 경우 두 가지 소스를 작성해 보았다.
배열로 구현하는 경우
1 2 3 4 5 6 7 8 9 10 11 | public static void insertSort(int[] arr) { for(int i = 1; i < arr.length; i++) { for(int j = i; j > 0; j--) { if(arr[j-1] > arr[j]) { int temp = arr[j-1]; arr[j-1] = arr[j]; arr[j] = temp; } } } } | cs |
리스트로 구현하는 경우(추천)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | public static List<Integer> insertSort(List<Integer> input) { LinkedList<Integer> list = new LinkedList<Integer>(input); for(int i = 0 ; i < list.size() ; i++) { for(int j = i ; j < list.size() ; j++) { if(list.get(i) > list.get(j)) { Integer temp = list.remove(j); list.add(i, temp); } } } return list; } | cs |
'JAVA > JAVA 프로그래밍' 카테고리의 다른 글
java.util.function패키지가 제공하는 FunctionalInterface정리 (0) | 2018.05.16 |
---|---|
JAVA8 Lambda 람다는 @FunctionalInterface의 구현체이다. (0) | 2018.05.14 |
JAVA 7 New Features 새로운 기능 변경사항 정리 (0) | 2018.05.07 |
버블정렬 버블소트 BubleSort 자바구현 (0) | 2018.04.28 |
Comparable, Comparator 자바 정렬 (0) | 2018.04.28 |
이 글을 공유하기