C語言常見幾種排序彙總

2021-06-27 02:27:03 字數 562 閱讀 6706

//c

語言排序

//氣泡排序

void mao(int *a,int n)}}

}//快排

void quicksort(int *a,int n)

/*從前往後搜尋比val大的元素,找到後填到a[j]中並跳出迴圈*/

for(;iif(a[i]>val)

}a[i]=val;/*將儲存在val中的數放到a[i]中*/

quicksort(a,i);/*

遞迴,對前

i個數排序*/

quicksort

(a+i+

1,n-

1-i);/*對i+1到numsize-1這numsize-1-i個數排序*/}}

//選擇排序

void selectsort(int *x, int n)}if

(min != i) /*如果min在迴圈中改變了,就需要交換資料*/}}

//插入排序

void insert(int *a,int n)

a[j+1]=temp; /*

插入*/ }

}

C語言實現幾種常見排序演算法

worker.c created on 2010 7 1 author panfei include void swap int x,int y 插入排序 公升序 void insertsort int arr,int size arr j 1 to insert 選擇排序 降序 void sele...

C語言實現幾種常見排序演算法

氣泡排序最好的時間複雜度為 o n 氣泡排序總的平均時間複雜度為 o n 2 氣泡排序演算法的原理如下 1.比較相鄰的元素。如果第乙個比第二個大,就交換他們兩個。2.對每一對相鄰元素做同樣的工作,從開始第一對到結尾的最後一對。在這一點,最後的元素應該會是最大的數。3.針對所有的元素重複以上的步驟,除...

c 常見的幾種排序

找到最小的元素,並記錄下它的下標,然後和第i個元素進行交換,每次進行乙個迴圈便找到乙個最小值。比如在乙個長度為n的無序陣列中,在第一趟遍歷n個資料,找出其中最小的數值與第乙個元素交換,第二趟遍歷剩下的n 1個資料,找出其中最小的數值與第二個元素交換 第n 1趟遍歷剩下的2個資料,找出其中最小的數值與...