数据结构实验二排序算法代码实现

void mergesort(int a[], int first, int last, int temp[]) {

if (first < last) {

int mid = (first + last) / 2;

mergesort(a, first, mid, temp); //左边有序 mergesort(a, mid + 1, last, temp); //右边有序 for (int i = 0; i < last+1; ++i) {

cout<

cout<<\

mergearray(a, first, mid, last, temp); //再将二个有序数列合并

for (int i = 0; i < last+1; ++i) {

cout<

cout<<\ } }

bool MergeSort(int a[], int n) {

int *p = new int[n]; if (p == NULL) return false;

mergesort(a, 0, n - 1, p); delete[] p; return true; }

int main() {

int d[6]={3,2,5,1,3,4}; for(int i=0;i<6;i++) cout<

selectionSort(d,6); cout<<\

bubbleSort(d,6);

cout<<\

insertionSort(d,6); cout<<\

int n = 12;

int p[12] = {323,31,13,25,2,111,332,54,253,14,544,435}; for (int i=0;i

radixSort(p,n,3); for (int i=0;i

int array[]={34,65,12,43,67,5,78,10,3,70},k; int len=sizeof(array)/sizeof(int); cout<<\ for(k=0;k

cout<

quickSort(array,0,len-1); cout<<\ for(k=0;k

cout<

int arr[] = {34,65,12,43,67,5,78,10,3,70}; MergeSort(arr, 10);

for (int i = 0; i < 10; ++i) {

cout<

return 0; }

联系客服:779662525#qq.com(#替换为@)