中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

c++插入排序詳解

發布時間:2020-09-09 05:50:06 來源:腳本之家 閱讀:226 作者:傻蝸牛 欄目:編程語言

說一說插入排序

插入排序的基本操作就是將一個數據插入到已經排序好序的數據中,從而得到一個新的,個數加一的有序數據,算法適用與少量的數據的排序。時間復雜度O(n^2),是穩定的排序算法。

基本思想:每步將一個待排序的記錄,按其關鍵碼值的大小插入前面已經排序的文件的適當位置上去,直到全部插入完為止。

原理示意圖:

c++插入排序詳解

 函數段的c++代碼實現:

c++插入排序詳解

全部代碼如下:

 #include <iostream>
 using namespace std;
 void insert_sort(int* a,int b)//實現插入排序,引入兩個參數,a為數組首地址,b為數組元素個數 
 {
   for(int i=1;i<b;i++)
   {
     int j=i;
     int t=*(a+j);//標記待排序的元素 
     //將大于待排序元素的數整體后移,然后將t插入小于它的數的后面 
     while(t<*(a+j-1)&&j!=0)
     {
       *(a+j)=*(a+j-1);
       j--;  
     }
     *(a+j)=t;
   }
 }
 int main()
 {
   int a[5];
   for(int i=0;i<5;i++)
   {
     cin>>a[i];
   }
   insert_sort(a,5);
   for(int i=0;i<5;i++)
   {
     cout<<a[i]<<" ";
   } 
 }

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

射洪县| 东山县| 恩施市| 井冈山市| 射洪县| 饶平县| 浠水县| 准格尔旗| 家居| 商洛市| 延吉市| 于都县| 达日县| 永川市| 子长县| 天峨县| 阳高县| 鄂托克旗| 措勤县| 萨嘎县| 临朐县| 多伦县| 玛纳斯县| 绩溪县| 商河县| 仙游县| 池州市| 庄河市| 东丽区| 灵山县| 沛县| 尚志市| 玉溪市| 厦门市| 敦煌市| 万盛区| 二连浩特市| 中西区| 上栗县| 军事| 临清市|