日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

排序算法的实现(C/C++实现)

發布時間:2025/7/14 c/c++ 18 豆豆
生活随笔 收集整理的這篇文章主要介紹了 排序算法的实现(C/C++实现) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

存檔:

1 #include <iostream> 2 #include <stdlib.h> 3 #include <sort.h> 4 #define maxsize 20 5 using namespace std; 6 int main() 7 { 8 sqlist l; 9 int num; 10 init(l); 11 create(l); 12 show(l); 13 cout<<"*******************************************"<<endl; 14 cout<<"1.直接插入排序"<<endl; 15 cout<<"2.冒泡排序"<<endl; 16 cout<<"3.簡單選擇排序"<<endl; 17 cout<<"4.輸出表信息"<<endl; 18 cout<<"5.生成新的關鍵字序列"<<endl; 19 cout<<"6.退出"<<endl; 20 cout<<"*******************************************"<<endl; 21 cout<<"請輸入您的選擇:"<<endl; 22 cin.clear(); 23 cin>>num; 24 while(1) 25 { 26 switch(num) 27 { 28 case 1: 29 insertsort(l); 30 break; 31 case 2: 32 bubblesort(l); 33 break; 34 case 3: 35 selectsort(l); 36 break; 37 case 4: 38 show(l); 39 break; 40 case 5: 41 create(l); 42 break; 43 case 6: 44 exit(0); 45 break; 46 default: 47 cout<<"輸入錯誤!"; 48 } 49 cout<<endl; 50 cout<<"請重新輸入您的選擇:"<<endl; 51 cin>>num; 52 } 53 return 0; 54 } 1 typedef struct 2 { 3 int key; 4 char *otherinfo; 5 }elemtype;//數據元素類型 6 typedef struct 7 { 8 elemtype r[maxsize];//存儲空間的基地址 9 int length;//順序表長度 10 }sqlist;//順序表類型 11 void init(sqlist &l)//初始化 12 { 13 l.length=0; 14 } 15 void create(sqlist &l)//創建表 16 { 17 int i,n; 18 cout<<"請輸入數據個數,不超過"<<maxsize<<"個."<<endl; 19 cin>>n;//輸入數據元素 20 cout<<"請輸入待排序的數據:"<<endl; 21 while(n>maxsize) 22 { 23 cout<<"個數超過上限,不能超過"<<maxsize<<",請重新輸入"<<endl; 24 cin>>n; 25 } 26 for(i=1;i<=n;i++) 27 { 28 cin>>l.r[i].key; 29 l.length++; 30 } 31 } 32 void show(sqlist l)//輸出顯示 33 { 34 int i; 35 for(i=1;i<=l.length;i++) 36 cout<<l.r[i].key<<" "; 37 cout<<endl; 38 } 39 void insertsort(sqlist l)//直接插入排序 40 { 41 int i,j; 42 for(i=2;i<=l.length;i++) 43 { 44 if(l.r[i].key<l.r[i-1].key)//"<",需將r[i]插入有序子表 45 { 46 l.r[0]=l.r[i];//將待插入的記錄暫存到監視哨中 47 l.r[i]=l.r[i-1];//r[i-1]后移 48 for(j=i-2;l.r[0].key<l.r[j].key;j--)//從后向前尋找插入位置 49 l.r[j+1]=l.r[j];//記錄逐個后移,直到找到插入位置 50 l.r[j+1]=l.r[0];//將r[0]即原r[i],插入到正確位置 51 } 52 cout<<""<<i-1<<"趟排序結果:"; 53 show(l); 54 } 55 cout<<"直接插入排序最終結果為:"; 56 show(l); 57 } 58 void bubblesort(sqlist l)//冒泡排序 59 { 60 int m,j,flag; 61 elemtype t; 62 m=l.length-1;//共n-1趟冒泡 63 flag=1;//flag用來標記某一趟排序是否發生交換,1表示交換,0表示未交換 64 while((m>0)&&(flag==1)) 65 { 66 flag=0;//flag置為0,如果本趟排序沒有發生交換,則不會執行下一趟排序 67 for(j=1;j<=m;j++) 68 { 69 if(l.r[j].key>l.r[j+1].key) 70 { 71 flag=1;//flag置為1,表示本趟排序發生了交換 72 t=l.r[j]; 73 l.r[j]=l.r[j+1]; 74 l.r[j+1]=t;//交換前后兩個記錄 75 } 76 } 77 cout<<""<<l.length-m<<"趟排序結果:"; 78 show(l); 79 m--; 80 } 81 cout<<"冒泡排序最終結果為:"; 82 show(l); 83 } 84 void selectsort(sqlist l)//簡單選擇排序 85 { 86 int i,j,k; 87 elemtype t; 88 for(i=1;i<l.length;i++) 89 { 90 k=i;//在l.r[i...l.length]中選擇關鍵字最小的記 91 for(j=i+1;j<=l.length;j++) 92 { 93 if(l.r[j].key<l.r[k].key) 94 { 95 k=j;//k指向此趟排序中關鍵字最小的記 96 } 97 } 98 if(k!=i)//交換r[i]與r[k] 99 { 100 t=l.r[i]; 101 l.r[i]=l.r[k]; 102 l.r[k]=t; 103 } 104 cout<<""<<i<<"趟排序結果:"; 105 show(l); 106 } 107 cout<<"簡單選擇排序最終結果為:"; 108 show(l); 109 }

運行結果如下:

?

轉載于:https://www.cnblogs.com/ECJTUACM-873284962/p/7999908.html

總結

以上是生活随笔為你收集整理的排序算法的实现(C/C++实现)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 一区二区三区免费在线观看视频 | 一区在线不卡 | 亚洲人成在线观看 | 欧美日韩精品一区二区三区蜜桃 | 精品天堂 | 亚洲第一二三四区 | 女女高潮h冰块play失禁百合 | 久草免费在线色站 | av大片在线| 1000部多毛熟女毛茸茸 | 男生操女生在线观看 | 我想看一级黄色片 | 小柔好湿好紧太爽了国产网址 | av大片免费在线观看 | 男生女生羞羞网站 | 国产精品中文在线 | 美日韩中文字幕 | 午夜时刻免费入口 | 亚洲第一天堂影院 | 久久精品女人毛片国产 | 91人人爱 | 五月天婷婷丁香花 | 成人三级电影网站 | 91伊人 | 午夜精品久久久久久久久久蜜桃 | 男人桶进美女尿囗 | eeuss鲁丝片一区二区三区 | 91九色高潮 | 欧美三级黄色 | 九月激情网 | 污污网站免费在线观看 | 极品尤物在线观看 | 丝袜美女av | wwwxxx日本| 精品国产乱码久久久久久图片 | 久草视频在 | 色婷婷婷婷 | 亚洲品质自拍 | 日日干夜夜骑 | www.爱爱.com| 一级视频在线 | 在线精品国产 | 欧美极品三级 | 亚洲综合p | 国产视频一二 | aaaaav| 日韩色区 | 日本xxxxxxxxx69 | 美日韩丰满少妇在线观看 | 99热麻豆 | 国模精品一区二区三区 | 熟女高潮一区二区三区视频 | 亚洲国产视频一区二区三区 | 欧美精品免费在线观看 | 国产精品分类 | 国产精品资源在线观看 | 国产精品一区在线观看 | 9cao| 欧美性色a| 亚洲乱码一区二区三区 | 可以看的毛片 | 国产精品免费久久久久 | 97精品人妻一区二区 | 华丽的外出在线 | 日韩高清专区 | 亚洲一区日韩 | 三级网站国产 | 日韩欧美三级在线观看 | 在线观看超碰 | av三级网| 午夜久久网 | 免费成人在线电影 | 日韩精品中文字幕一区二区 | 韩国三级国产 | 亚洲美女精品 | а中文在线天堂 | 日本女优一区 | 一个色综合网站 | 国产91精品高潮白浆喷水 | 六月婷婷网 | 一级片在线免费观看 | 亚洲三页 | 国产乱码精品一区二区三区不卡 | 3d欧美精品动漫xxxx无尽 | 日韩免费视频观看 | 日韩激情毛片 | 免费观看成人 | 国产成人精品二区三区亚瑟 | 色婷婷丁香 | 国产激情一区二区三区在线观看 | 婷婷午夜精品久久久久久性色av | 激情三级在线 | 日韩免费播放 | 日本黄色性视频 | 欧美性生活一区二区 | av永久 | 你懂的网站在线 | 两女双腿交缠激烈磨豆腐 | 永久免费AV无码网站韩国毛片 |