亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C++ > 正文

C語言實現快速排序算法

2020-05-23 13:28:30
字體:
來源:轉載
供稿:網友

一、快速排序算法(Quicksort)

1. 定義

快速排序由C. A. R. Hoare在1962年提出??焖倥判蚴菍γ芭菖判虻囊环N改進,采用了一種分治的策略。

C語言,快速排序算法

2. 基本思想

通過一趟排序將要排序的數據分割成獨立的兩部分,其中一部分的所有數據都比另外一部分的所有數據都要小,然后再按此方法對這兩部分數據分別進行快速排序,整個排序過程可以遞歸進行,以此達到整個數據變成有序序列。

3. 步驟

a. 先從數列中取出一個數作為基準數。

b. 分區過程,將比這個數大的數全放到它的右邊,小于或等于它的數全放到它的左邊。

c. 再對左右區間重復第二步,直到各區間只有一個數。

二、C語言實現代碼(僅供參考)

/*****************************************************File name:QuicksortAuthor:Zhengqijun  Version:1.0  Date: 2016/11/04Description: 對數組進行快速排序Funcion List: 實現快速排序算法*****************************************************/ #include <stdio.h>#include <stdlib.h> #define BUF_SIZE 10 /************************************************** *函數名:display *作用:打印數組元素 *參數:array - 打印的數組,maxlen - 數組元素個數 *返回值:無 **************************************************/void display(int array[], int maxlen){  int i;   for(i = 0; i < maxlen; i++)  {    printf("%-3d", array[i]);  }  printf("/n");   return ;} /******************************** *函數名:swap *作用:交換兩個數的值 *參數:交換的兩個數 *返回值:無 ********************************/void swap(int *a, int *b) {  int temp;   temp = *a;  *a = *b;  *b = temp;   return ;} /************************************ *函數名:quicksort *作用:快速排序算法 *參數: *返回值:無 ************************************/void quicksort(int array[], int maxlen, int begin, int end){  int i, j;   if(begin < end)  {    i = begin + 1; // 將array[begin]作為基準數,因此從array[begin+1]開始與基準數比較!    j = end;    // array[end]是數組的最后一位         while(i < j)    {      if(array[i] > array[begin]) // 如果比較的數組元素大于基準數,則交換位置。      {        swap(&array[i], &array[j]); // 交換兩個數        j--;      }      else      {        i++; // 將數組向后移一位,繼續與基準數比較。      }    }     /* 跳出while循環后,i = j。     * 此時數組被分割成兩個部分 --> array[begin+1] ~ array[i-1] < array[begin]     *              --> array[i+1] ~ array[end] > array[begin]     * 這個時候將數組array分成兩個部分,再將array[i]與array[begin]進行比較,決定array[i]的位置。     * 最后將array[i]與array[begin]交換,進行兩個分割部分的排序!以此類推,直到最后i = j不滿足條件就退出!     */     if(array[i] >= array[begin]) // 這里必須要取等“>=”,否則數組元素由相同的值時,會出現錯誤!    {      i--;    }     swap(&array[begin], &array[i]); // 交換array[i]與array[begin]        quicksort(array, maxlen, begin, i);    quicksort(array, maxlen, j, end);  }} // 主函數int main(){  int n;  int array[BUF_SIZE] = {12,85,25,16,34,23,49,95,17,61};  int maxlen = BUF_SIZE;    printf("排序前的數組/n");  display(array, maxlen);    quicksort(array, maxlen, 0, maxlen-1); // 快速排序    printf("排序后的數組/n");  display(array, maxlen);    return 0;}

執行程序后的結果如下所示:

C語言,快速排序算法

上訴代碼結合了我自己對快速排序的看法和理解,僅供參考。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
91精品国产自产在线观看永久| 亚洲国内高清视频| 色久欧美在线视频观看| 国产成人短视频| 91久久国产精品| 社区色欧美激情 | 欧美最近摘花xxxx摘花| 一区二区三区视频免费在线观看| 亚洲最大的av网站| 在线观看欧美成人| 欧美日韩999| 日韩一区二区福利| 亚洲另类欧美自拍| 久久国产天堂福利天堂| 久久久久久中文字幕| 国产欧美婷婷中文| 国产福利成人在线| 国语自产精品视频在线看一大j8| 久久久亚洲国产天美传媒修理工| 色偷偷噜噜噜亚洲男人的天堂| 亚洲精品中文字| 国产精品久久久久久久久久三级| 国产97在线|亚洲| 91成人性视频| 成人xxxx视频| 日韩欧美国产视频| 欧美激情亚洲激情| 福利视频一区二区| 亚洲欧美日韩成人| 久久青草精品视频免费观看| 欧美亚洲国产视频小说| 亚洲人成人99网站| 午夜精品久久久久久久久久久久久| 欧美另类交人妖| 91国内在线视频| 亚洲片在线观看| 国产精品极品在线| 北条麻妃一区二区三区中文字幕| 久久久久久久999精品视频| 国产精品一区二区在线| 不用播放器成人网| 深夜福利一区二区| 久久91精品国产91久久久| 91国产在线精品| 日韩av在线天堂网| 亚洲一区二区三区视频播放| 97在线免费观看| 最近2019中文字幕在线高清| 色综合久久天天综线观看| 欧美精品一区二区免费| 91精品视频免费观看| 九九热这里只有精品免费看| 久久久精品999| 久久99久久99精品中文字幕| 亚洲国产精彩中文乱码av| 日韩电影中文字幕一区| 欧美日韩免费网站| 欧美黄色片免费观看| 久久99国产精品久久久久久久久| 国产精品久久久久久久久粉嫩av| 国产精品高潮呻吟久久av黑人| 亚洲人成电影网站色| 国产精品嫩草影院久久久| 动漫精品一区二区| 亚洲欧洲视频在线| 懂色av影视一区二区三区| 欧美老女人性生活| 色综合视频一区中文字幕| 中文字幕成人在线| 亚洲男人7777| 久久综合伊人77777蜜臀| 日韩电影免费在线观看| 国产精品羞羞答答| 九色成人免费视频| 国产精品欧美风情| 久精品免费视频| 久久99青青精品免费观看| 国产99久久精品一区二区 夜夜躁日日躁| 成人看片人aa| 激情亚洲一区二区三区四区| 超碰精品一区二区三区乱码| 成人av电影天堂| 国产亚洲人成网站在线观看| 亚洲奶大毛多的老太婆| 色综合影院在线| 欧美一区二区三区精品电影| 久久久久久国产精品| 亚洲欧洲在线视频| 奇米4444一区二区三区| 97超碰色婷婷| 日韩av电影在线播放| 中文字幕日韩免费视频| 亚洲高清免费观看高清完整版| 日韩电影免费观看在线观看| 国产福利视频一区| yellow中文字幕久久| xxx成人少妇69| 欧美特级www| 成人午夜黄色影院| 国产欧美精品一区二区| 免费97视频在线精品国自产拍| 亚洲天堂男人天堂女人天堂| 国产色综合天天综合网| 欧美肥婆姓交大片| 性色av一区二区三区| 福利微拍一区二区| 亚洲影影院av| 国产精品久久久久久久久粉嫩av| www亚洲欧美| 久久99国产精品久久久久久久久| 成人黄色大片在线免费观看| 亚洲国产精品成人av| 国产精品白丝av嫩草影院| 亚洲第一页在线| 亚洲新中文字幕| 日韩av在线网页| 亚洲精品网站在线播放gif| 欧美日韩加勒比精品一区| 欧美俄罗斯乱妇| 国产精品极品美女在线观看免费| 国产区精品在线观看| 久久精品男人天堂| 国产欧美精品xxxx另类| 国产精品免费看久久久香蕉| 久久精品福利视频| 欧美丰满老妇厨房牲生活| 亚洲成人激情图| 在线亚洲欧美视频| 91在线免费看网站| 国产在线999| 精品久久久久久久久久| 77777亚洲午夜久久多人| 亚洲精品一二区| 国产一区二区三区三区在线观看| 日韩麻豆第一页| 欧美激情免费看| 欧美激情精品久久久久久久变态| 亚洲第一中文字幕在线观看| 欧美在线观看网站| 久久免费视频网| 亚洲成人激情视频| 久久综合亚洲社区| 日韩在线观看成人| 97视频在线观看视频免费视频| 日韩精品在线观| 久久久久九九九九| 亚洲精品免费网站| 亚洲国产高清高潮精品美女| 精品色蜜蜜精品视频在线观看| 伊人av综合网| 久久影院中文字幕| 欧美激情中文字幕在线| 久久久久九九九九| 亚洲美女性生活视频| 亚洲欧美www| 日韩在线欧美在线国产在线| 国产精品日本精品| 久久综合久久美利坚合众国| 久久久精品影院| 国产精品成人播放| 亚洲欧美综合图区| 国产精品一区二区三区久久| 日本久久久久久久久| 久久精品中文字幕一区|