선택정렬이란? 선택 정렬(選擇整列, selection sort)은 제자리 정렬 알고리즘의 하나로, 다음과 같은 순서로 이루어진다.주어진 리스트 중에 최솟값을 찾는다.그 값을 맨 앞에 위치한 값과 교체한다(패스(pass)).맨 처음 위치를 뺀 나머지 리스트를 같은 방법으로 교체한다.비교하는 것이 상수 시간에 이루어진다는 가정 아래, n개의 주어진 리스트를 이와 같은 방법으로 정렬하는 데에는 Θ(n2) 만큼의 시간이 걸린다.출처 - 위키 출처는 위키가 최고다. 그럼 이제 자바로 구현해보자 public static void main(String[] arg){ int[] arr = {3,1,2,10,3,99, 19};selectionSort(arr);System.out.println(Arrays.toString..
MergeSort란?합병 정렬은 다음과 같이 작동한다.리스트의 길이가 0 또는 1이면 이미 정렬된 것으로 본다. 그렇지 않은 경우에는정렬되지 않은 리스트를 절반으로 잘라 비슷한 크기의 두 부분 리스트로 나눈다.각 부분 리스트를 재귀적으로 합병 정렬을 이용해 정렬한다.두 부분 리스트를 다시 하나의 정렬된 리스트로 합병한다.출처 - 위키 뭐 설명은 여기저기서 다 보면 이해 가능할거라 생각한다. 그럼 자바로 한번 구현해보자. public static void main(String[] args) { int[] arr = {3,2,9,5,10,15,40,1,22,2,99}; mergeSort(arr); System.out.println("arr: " + Arrays.toString(arr));} // 배열들을 크..
삽입정렬이란?삽입 정렬(揷入整列, insertion sort)은 자료 배열의 모든 요소를 앞에서부터 차례대로 이미 정렬된 배열 부분과 비교하여, 자신의 위치를 찾아 삽입함으로써 정렬을 완성하는 알고리즘이다. 한마디로 배열의 1번째부터 마지막까지 반복문을 사용하여 Key로 선택해서 앞 배열들과 비교 후 자리를 바꿔주는 정렬이다.그럼 자바로 구현해 보겠다. 항상 티스토리에서 직접 코드를 작성하기 때문에 오타는 있을 수 있다. public static void main(String[] args) {int[] arr = {6,12,3,2,1,3,99,323,3821,129,1}; insertionSort(arr);System.out.println("arr : " + Arrays.toString(arr));} p..
이진탐색이란?정렬된 배열에서 검색하고 싶은 키가 몇번째인지 확인 하는 탐색 알고리즘. ( 꼭 정렬이 되어 있어야 찾을 수 있다. ) 이진 검색 알고리즘(binary search algorithm)은 오름차순으로 정렬된 리스트에서 특정한 값의 위치를 찾는 알고리즘이다. 처음 중간의 값을 임의의 값으로 선택하여, 그 값과 찾고자 하는 값의 크고 작음을 비교하는 방식을 채택하고 있다. 처음 선택한 중앙값이 만약 찾는 값보다 크면 그 값은 새로운 최고값이 되며, 작으면 그 값은 새로운 최하값이 된다. 검색 원리상 정렬된 리스트에만 사용할 수 있다는 단점이 있지만, 검색이 반복될 때마다 목표값을 찾을 확률은 두 배가 되므로 속도가 빠르다는 장점이 있다.-- 출처 https://ko.wikipedia.org/wik..
public class Factorial { public static void main(String[] args) {/* 팩토리얼을 구해보자. 기본적 공식 5! = 5*4*3*2*1 N!은 N부터 1까지 모두 곱한 값 3! 을 구해보자 3! = 3*2*1*/ int factorialNum = getFactiorial(5);System.out.println("factirialNum :" + factorialNum);} private static int getFactiorial(int num) {if( num == 1) return 1;// 1일땐 1을 리턴해준다 return getFactiorial(num-1) * num;/* 설명은 할 것도 없지만... 만약 5가들어올경우 5*4*3*2*1 이되야함맨 처..
- Total
- Today
- Yesterday
- binarysearch
- InsertionSort
- selectionSort
- 이진탐색
- websocket
- 버블정렬
- 스프링
- Java
- sockjs
- 합병정렬
- 퀵정렬
- Mergesort
- dbconnection
- Quicksort
- BubbleSort
- 태그를 입력해 주세요.
- spring
- Spring메일
- jquery
- mysql
- 삽입정렬
- 알고리즘
- 선택정렬
- 페이징
- SQL
- Cookie
- 팩토리얼
- Algorithm
- 전화번호
- iBATIS
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |