데이터 구조와 알고리즘 - 10대 고전 알고리즘 - 통합 정렬
#include “sort_.h”
void print_array(int*arr, intn)//인쇄 배열 {if(n==0){printf("ERROR: Array length is ZERO");return;}printf("%d", arr[0]); for (int i=1; i printf("%d", arr[i]); } printf(""); }
int* merge_array(int arr1, int n1, int arr2, int n2)///프로그래밍은 두 개의 질서수 그룹arr1과arr2의 합병//함수 매개 변수를 실현한다. 질서수 그룹arr1의 길이와 질서수 그룹arr2의 길이//함수 반환값: 작은 정렬에서 큰 정렬까지의 합병 그룹 {///코드를 보충하여 이 관문 작업을 완료하십시오/****** Begin****/
int i,j,k, m;
int temp[n1+n2];
i = j = k = 0;
while(i < n1 && j < n2)
{
if(arr1[i] < arr2[j])
{
temp[k] = arr1[i];
k++;
i++;
}
else
{
temp[k++] = arr2[j++];
}
}
while(i < n1)
{
temp[k++] = arr1[i++];
}
while(j < n2)
{
temp[k++] = arr2[j++];
}
for(m = 0;m < (n1 + n2);m++)
{
arr1[m] = temp[m];
}
return arr1;/********** End/} int merge_sort(int arr, int n)//merge_ 기반array 함수 프로그래밍 병합 정렬 실현: 위에서 아래로 돌아가는 방법//함수 매개 변수: 질서수 그룹arr수 그룹arr 길이//함수 반환 값: 작은 그룹에서 큰 그룹으로 되돌아온 그룹 {//여기에 코드를 보충하여 본 작업 완료/Begin *****/
if(n > 1) { int *arr1 = arr; int n1 = n/2; int *arr2 = arr + n1; int n2 = n - n1;
merge_sort(arr1, n1);
merge_sort(arr2, n2);
//
merge_array(arr1, n1, arr2, n2);
return arr1;
}
/********** End **********/
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.