
Goal - 선택 정렬 알고리즘 이해 - 선택 정렬 알고리즘 C언어 및 Java언어 구현 - 선택 정렬 알고리즘의 특징 - 선택 정렬 알고리즘 시간복잡도 이해 1. 선택 정렬 ( Selection sort ) 알고리즘 이해 - 오름차순을 기준으로 정렬 - 해당 순서에 원소를 넣을 위치는 이미 정해져 있고, 어떤 원소를 넣을지 선택하는 알고리즘 -> 첫 번째 순서에는 첫 번째 위치에 가장 최솟값을 넣는다. -> 두 번째 순서에는 두 번째 위치에 남은 값 중에서의 최솟값을 넣는다. -> ... 반복 - 선택 정렬 알고리즘의 구체적인 이해 -> 선택 정렬은 첫 번째 자료를 시작으로 자료크기의 - 1까지 값을 key변수에 저장하는 반복문과, 첫 번쨰 자료의 오른쪽 자료부터 마지막 자료까지 차례대로 비교하는 이중..

Goal - 이진검색의 이해 - 이진검색 알고리즘 C언어 및 Java언어로 구현 - 정렬의 이해 및 시간복잡도 비교 1. 이진검색과 정렬 1-1 이진검색 (Binary Search) - 제어 검색의 일종인 이진 검색은 반드시 순서화된 파일이어야 검색할 수 있다. - 찾고자하는 값을 파일의 중간 값과 비교하며 검색함 - 반쪽을 찾아보고 없으면, 크기 비교를 통해 왼쪽 또는 오른쪽으로 방향을 설정하고 나머지 반쪽에서 찾아가면서 범위를 점점 반씩으로 줄여가는 방법 - 배열의 첫 값을 보통 First 마지막 값은 Last 중간값은 Middle이라고 함. 예제1) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15와 같이 레코드가 구성되어 있을 때, 이진 검색 방법으로 14를 찾는 경우 비교되는 횟수..

1. 삽입 정렬 (Insertion sort) - 오름차순을 기준으로 정렬 - 알고리즘 해석 -> 두 번째 자료부터 시작하여 key변수에 저장하고, 그 앞(왼쪽)의 자료들과 비교하여 비교대상 값이 key 값보다 크면, key변수에 더 큰값을 삽입하고, 첫 번째 자료의 위치까지 계속해서 큰값을 찾는 작업을 수행 후, 더이상 큰 값이 없거나, 인덱스가 0이 되면 반복을 마친 후 종료된 시점의 위치에 key값을 옮겨 정렬하는 알고리즘 - 즉, 두 번째 자료는 첫 번째 자료, 세 번째 자료는 두 번째와 첫 번째 자료와 비교한 후 자료가 삽입될 위치를 찾는다. 자료가 삽입될 위치를 찾았다면 그 위치에 자료를 삽입하기 위해 자료를 한 칸씩 뒤로 이동시킨다. - 처음 key 값은 두 번째 자료부터 시작. 1) C언어..

Goal - 버블정렬 이해 - 버블정렬 알고리즘 C언어 및 Java언어로 구현 - 버블정렬의 특징 및 시간복잡도 1. 버블정렬 (bubble sort) - 각 회전마다 첫 번째 값을 시작으로 양옆 값을 비교후 교환 하여 자료내 가장 큰 값을 맨 뒤로 밀어냄. - 회전의 수행으로 가장 큰 값이 뒤에서부터 채워지기 때문에, 각 회전에서의 교환 작업은 이전 회전의 교환 작업수 -1. - 총 자료의 수(n) - 1번 회전 수행. 사진 1) 버블정렬 실행 방식 1) C로 구현 void bubbleSort(int data[], int n){ for (int i = n-1; i > 0; i--){ for (int j = 0; j data[j + 1]){ int tmp =..
- 20200504
- 20200423
- 20200330
- 20200429
- 20200622
- likelion
- 20200317
- 20200424
- 20200510
- 20200406
- 20200624
- 20200421
- 20200420
- 20200319
- 20200503
- 20200428
- 생활코딩리눅스
- 20200512
- 20201204
- 백준
- 20200804
- 20200425
- chapter8
- 20200413
- 20200417
- 20200415
- chapter7
- 20200502
- 20200427
- 20200403
- Total
- Today
- Yesterday