氣泡排序 插入排序 選擇排序

2021-08-24 17:54:59 字數 499 閱讀 6449

氣泡排序是每輪比較未排序部分,從第乙個元素開始找最值,比較相鄰數字,依次往後推移,最終將最值置於最右。

假設有n個數,外迴圈迴圈n-1遍,內迴圈是n-1在減去當前是第幾次外迴圈。

void bubble_sort(mytype *a,int n)//n為陣列長度}}

}

插入排序是從第二個元素開始快取,然後向前比較,如果前面的不是最值,往右移動,直到保證從開始到當前位置該快取值是最值為止,此時插入。

void insert_sort(mytype *a,int n)//n為陣列長度

a[j] = t;

}}

選擇排序是每輪從未排序部分找到極值的位置,然後將該極值與未排序部分的最右側進行交換。

void select_sort(mytype *a,int n)//n為陣列長度

}if(min != i)

}}

氣泡排序,選擇排序,插入排序

氣泡排序,選擇排序,插入排序 小規模的檔案以及基本有序的檔案,插入排序的效能比快速排序的效能更為有效一些,實際上,插入排序通常也做快速排序實現的一部分。1 氣泡排序 packagedatastrut public classbubblesort public voidinsert longvalue...

選擇排序 , 插入排序 , 氣泡排序

編寫 include void println int array,int len 列印給定長度的陣列 printf n void swap int array,int i,int j 交換陣列中兩個位置的元素 void selectionsort int array,int len o n n 對...

氣泡排序 插入排序 選擇排序

從起始索引開始,每次和後面元素的比較,如果比後面大就交換 每完成一次遍歷,最後乙個一定最大,所以第二只用遍歷到倒數第乙個,以此類推 優化 如果在一次遍歷過程中沒有發生交換,說明排序完成,直接退出。t n o n int a 100 i,j,n 索引從1開始 int flag 0 是否發生交換 for...