본문 바로가기

Sort

Merge Sort 구현 C++를 이용하여 Merge Sort를 구현한 소스코드이다. Merge를 할 때 원래는 마지막인지 체크를 하고 값을 넣는 과정이 있어야 하지만, 이렇게 하면 코드가 복잡해지기 때문에 합치려는 배열의 사이즈를 1씩 증가시켜서 마지막에 INT형 범위의 최댓값을 넣는 방법으로 구현하였다. #include using namespace std; #define INTMAX 2147483647 void mergeSort(int[], int, int); void merge(int[], int, int, int); int main(){ int *arr, N; cin >> N; arr = new int[N]; for (int i = 0; i > arr[i]; mergeSort(arr, 0, N ..
실습 1주차 [2] Insertion Sort 문제Insertion sort를 이용해서 주어진 정수들을 오름차순으로 정렬해서 출력한다. 단, 숫자의 개수가 10,000개를 넘지 않는다. 입력 형식(숫자 개수)숫자1 숫자2 ... 숫자N 출력 형식 : 주어진 N개의 숫자를 공백으로 구분하여 오름차순으로 출력 한다. Ex)입력54 7 3 10 1 출력1 3 4 7 10 답안 #include using namespace std; #define MAX_LEN 10000 void insertion_sort(int arr[], int size); int main(){ int N; cin >> N; int arr[MAX_LEN]; for (int i = 0; i > arr[i]; insertion_sort(arr, N); for (in..
실습 1주차 [1] Bubble Sort 문제Bubble sort를 이용해서 주어진 정수들을 오름차순으로 정렬해서 출력한다. 단, 숫자의 개수가 10,000개를 넘지 않는다. 입력 형식(숫자 개수)숫자1 숫자2 ... 숫자N 출력 형식 : 주어진 N개의 숫자를 공백으로 구분하여 오름차순으로 출력 한다. Ex)입력54 7 3 10 1 출력1 3 4 7 10 답안 #include using namespace std; #define MAX_LEN 10000 void bubble_sort(int arr[], int size); int main(){ int N; cin >> N; int arr[MAX_LEN]; for (int i = 0; i > arr[i]; bubble_sort(arr, N); for (int i = 0; ..