直接插入排序

來源:互聯網
上載者:User

標籤:有序   比較   \n   依次   clu   排序   函數   ++   print   

直接插入排序,其插入位置的確定方法是將待插入的記錄與有序區中的各記錄自右向左依次比較其關鍵字值的大小。本例使用直接插入法將數字由小到大進行排序。
#include <stdio.h>void insort(int s[],int n){    int i,j;    for(i=2;i<=n;i++)/*數組下標從2開始,s[0]做監視哨*/    {        s[0]=s[i];/*將待插入的值賦給監視哨*/        j=i-1;        while(s[0]<s[j])        {            s[j+1]=s[j];/*資料右移*/            j--;/*移向左邊一個未比較的數*/        }        s[j+1]=s[0];/*在確定的位置插入是s[i]*/    }}void main(){    int a[11],i;    printf("請輸入十個資料:\n");    for(i=1;i<=10;i++)        scanf("%d",&a[i]);/*鍵盤輸入10個數到數組*/    printf("原始順序:\n");    for(i=1;i<11;i++)        printf("%5d",a[i]);    insort(a,10);/*調用插入函數*/    printf("\n插入排序後的順序:\n");    for(i=1;i<11;i++)        printf("%5d",a[i]);    printf("\n");}

直接插入排序

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.