2705번2 [백준 2705번][C++] 수 정렬하기 - 7. 쉘 정렬 #include #include #include #include #include #include #include #include #include #include using namespace std; void SkipInsertionSort(vector& v, int start, int skipNum) { // 숫자를 건너뛰는 삽입정렬 for (int i = start + skipNum; i = 0; j -= skipNum) { if (v[j] > originNum) { // 앞의 숫자가 더 큰 경우 v[j + skipNum] =.. 2023. 7. 20. [백준 2705번][C++] 수 정렬하기 - 6.병합 정렬 #include #include #include #include #include #include #include #include #include #include using namespace std; void Merge(vector& v, int left, int mid, int right) { int i = left; // 왼쪽 부분 시작지점 int j = mid + 1; // 오른쪽 부분 시작지점 int k = left; // 원소를 넣을 위치 vector sortedVec(v.size()); // 정렬된 벡터를 저장할 공간 // 왼쪽부분과 오른쪽 부분의 원소들을 하나씩 차례로 비교하여 더 작은 원소를 sortedVec에 넣음. // 왼쪽 부분과 오른쪽 부분은 이미 오름차순으로 정렬되어있는 상태이므로 .. 2023. 7. 19. 이전 1 다음