大香蕉综合在线观看视频-日本在线观看免费福利-欧美激情一级欧美精品性-综合激情丁香久久狠狠

好房網(wǎng)

網(wǎng)站首頁常識百科 >正文

c語言排序算法總結(jié)(C語言插入排序算法及代碼)

2022-06-07 06:31:20 常識百科來源:
導(dǎo)讀相信目前很多小伙伴對于C語言插入排序算法及代碼都比較感興趣,那么小搜今天在網(wǎng)上也是收集了一些與C語言插入排序算法及代碼相關(guān)的信息來分...

相信目前很多小伙伴對于C語言插入排序算法及代碼都比較感興趣,那么小搜今天在網(wǎng)上也是收集了一些與C語言插入排序算法及代碼相關(guān)的信息來分享給大家,希望能夠幫助到大家哦。

1、在實際使用中,通常是排序整個無序數(shù)組,所以把這個無序數(shù)組分為兩部分排序好的子數(shù)組和待插入的元素。第一輪時,將第一個元素作為排序好的子數(shù)組,插入第二個元素;第二輪,將前兩個元素作為排序好的數(shù)組,插入第三個元素。以此類推,第i輪排序時,在前i個元素的子數(shù)組中插入第i+1個元素。直到所有元素都加入排序好數(shù)組。

2、下面,以對 3? 2? 4? 1 進(jìn)行選擇排序說明插入過程,使用j記錄元素需要插入的位置。排序目標(biāo)是使數(shù)組從小到大排列。第1輪[ 3 ]? [ 2? 4? 1 ]? (最初狀態(tài),將第1個元素分為排序好的子數(shù)組,其余為待插入元素)[ 3 ]? [ 2? 4? 1 ]? (由于3>2,所以待插入位置j=1)[ 2? 3 ]? [ 4? 1 ]? (將2插入到位置j)第2輪[ 2? 3 ]? [ 4? 1 ] (第1輪排序結(jié)果)[ 2? 3 ]? [ 4? 1 ] (由于2<4,所以先假定j=2)[ 2? 3 ]? [ 4? 1 ] (由于3<4,所以j=3)[ 2? 3? 4 ]? [ 1 ] (由于4剛好在位置3,無需插入)第3輪[ 2? 3? 4 ]? [ 1 ] (第2輪排序結(jié)果)[ 2? 3? 4 ]? [ 1 ] (由于1<2,所以j=1)[1? 2? 3? 4 ]??? (將1插入位置j,待排序元素為空,排序結(jié)束)

3、算法總結(jié)及實現(xiàn)選擇排序?qū)Υ笮镹的無序數(shù)組R[N]進(jìn)行排序,進(jìn)行N-1輪選擇過程。首先將第1個元素作為已經(jīng)排序好的子數(shù)組,然后將剩余的N-1個元素,逐個插入到已經(jīng)排序好子數(shù)組;。因此,在第 i輪排序時,前i個元素總是有序的,將第i+1個元素插入到正確的位置。

4、#include<stdio.h>#include<stdlib.h>#define N 8void insert_sort(int a[],int n);//插入排序?qū)崿F(xiàn),這里按從小到大排序void insert_sort(int a[],int n)//n為數(shù)組a的元素個數(shù){//進(jìn)行N-1輪插入過程for(int i=1; i<n; i++){//首先找到元素a[i]需要插入的位置int j=0;while( (a[j]<a[i]) && (j<i)){j++;}//將元素插入到正確的位置if(i != j) ?//如果i==j,說明a[i]剛好在正確的位置{int temp = a[i];for(int k = i; k > j; k--){a[k] = a[k-1];}a[j] = temp;}}}int ?main(){int num[N] = {89, 38, 11, 78, 96, 44, 19, 25};insert_sort(num, N);for(int i=0; i<N; i++)printf("%d ?", num[i]);printf("\n");system("pause");return 0;}

5、注意:插入排序是一種穩(wěn)定的排序算法,不會改變原有序列中相同數(shù)字的順序。

6、插入排序是在一個已經(jīng)有序的小序列的基礎(chǔ)上,一次插入一個元素。當(dāng)然,剛開始這個有序的小序列只有1個元素,就是第一個元素。比較是從有序序列的末尾開始,也就是想要插入的元素和已經(jīng)有序的最大者開始比起,如果比它大則直接插入在其后面,否則一直往前找直到找到它該插入的位置。如果碰見一個和插入元素相等的,那么插入元素把想插入的元素放在相等元素的后面。所以,相等元素的前后順序沒有改變,從原無序序列出去的順序就是排好序后的順序,所以插入排序是穩(wěn)定的。

本文到此結(jié)束,希望對大家有所幫助。


版權(quán)說明:本文由用戶上傳,如有侵權(quán)請聯(lián)系刪除!


標(biāo)簽:

熱點推薦
熱評文章
隨機文章
搡老熟女老女人一区二区| 亚洲男人天堂网在线视频| 国产女性精品一区二区三区 | 日本不卡在线一区二区三区| 中文字幕乱码免费人妻av| 蜜桃传媒在线正在播放| 久久综合狠狠综合久久综合| 蜜桃传媒视频麻豆第一区| 亚洲熟女国产熟女二区三区| 国产一级性生活录像片| 好吊日成人免费视频公开| 黄色激情视频中文字幕| 国产欧美日韩在线精品一二区 | 人妻内射精品一区二区| 手机在线观看亚洲中文字幕| 91亚洲熟女少妇在线观看| 国产日产欧美精品大秀| 日本一区二区三区久久娇喘| 日本加勒比在线观看不卡| 激情内射亚洲一区二区三区 | 91精品视频全国免费| av中文字幕一区二区三区在线| 欧美色婷婷综合狠狠爱| 91久久精品国产成人| 国产高清在线不卡一区| 夫妻性生活真人动作视频 | 风间中文字幕亚洲一区| 欧美成人免费视频午夜色| 懂色一区二区三区四区| 国产亚洲神马午夜福利| 亚洲一级二级三级精品| 中文字幕免费观看亚洲视频| 亚洲国产精品久久琪琪| 果冻传媒精选麻豆白晶晶 | 日本人妻丰满熟妇久久| 国产日产欧美精品大秀| 欧美特色特黄一级大黄片| 色婷婷国产熟妇人妻露脸| 亚洲美女国产精品久久| 丰满少妇被猛烈撞击在线视频| 成人午夜在线视频观看|