排序整理

#include
#include
#include
#include
using namespace std;
void swap(int *a,int *b){
    int k = *a;
    *a = *b;
    *b = k;
}
//直接插入排序
void insertSort(int *a,int len){
    for(int i=1;i=0;j--){
            if(tempa[j+1])
                swap(&a[j],&a[j+1]);
        }
    }
}
//归并排序
//递归
void merge(int *a,int left,int mid,int right,int *b){
    int i = left;
    int j = mid +1 ;
    int k = 0;
    while(i<=mid&&j<=right){
        if(a[i]len)
                rm = len;
            while(ra[r]){
                    b [t++] = a[r++];
                }else{
                    b[t++] = a[l++];
                }
            }
            while(r0){
                a[--r] = b[--t];
            }
        }
    }
}

//快速排序
//递归 
void quickSort(int *a,int left,int right){
    if(left>=right)
        return;
    int i,j,temp;
    i = left;
    j = right;
    temp = a[left];
    while(i=temp&&i=temp&&i

你可能感兴趣的:(排序整理)