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

首頁 > 編程 > C > 正文

歸并排序的遞歸實現與非遞歸實現代碼

2020-01-26 15:55:36
字體:
來源:轉載
供稿:網友

歸并排序
歸并排序是建立在歸并操作上的一種有效的排序算法。該算法是采用分治法(Divide and Conquer)的一個非常典型的應用。值得注意的是歸并排序是一種穩定的排序方法。將已有序的子序列合并,得到完全有序的序列;即先使每個子序列有序,再使子序列段間有序。若將兩個有序表合并成一個有序表,稱為2-路歸并。

算法描述
歸并操作的工作原理如下:
第一步:申請空間,使其大小為兩個已經排序序列之和,該空間用來存放合并后的序列
第二步:設定兩個指針,最初位置分別為兩個已經排序序列的起始位置
第三步:比較兩個指針所指向的元素,選擇相對小的元素放入到合并空間,并移動指針到下一位置

時間復雜度:
時間復雜度為O(nlogn) 這是該算法中最好、最壞和平均的時間性能。
空間復雜度為 O(n)
比較操作的次數介于(nlogn) / 2和nlogn - n + 1。
賦值操作的次數是(2nlogn)。歸并算法的空間復雜度為:0 (n)
歸并排序比較占用內存,但卻效率高且穩定的算法。
(以上摘抄自百度百科)

代碼實現
自頂向上實現:
//使用輔助數組實現歸并的過程

復制代碼 代碼如下:

void MergeSort(int *aux, int *data, int l, int m, int h)
{
 int k=0, i=l, j=m+1;

 for(k=l; k<=h; k++)
 {
  if(i>m)     aux[k]=data[j++];
  else if(j>h)    aux[k]=data[i++];
  else if(data[i]<data[j])        aux[k]=data[i++];
  else    aux[k]=data[j++];
 }
 for(k=l; k<=h; k++)
  data[k]=aux[k];
}

用遞歸實現排序的過程(自頂向下歸并)
復制代碼 代碼如下:

void Sort(int *aux, int *data, int l, int h)
{
 if(l<h)
 {
  int m=l+(h-l)/2;
  Sort(aux, data, l, m);
  Sort(aux, data, m+1, h);
  MergeSort(aux,data, l, m, h);
 }
}

用非遞歸實現排序的過程(自底向上歸并)
復制代碼 代碼如下:

void NonRerMerSort(int *aux, int *data, int l, int h)
{
 int i=l, j;
 for(i=l; i<=h; i=2*i)
 {
  for(j=l; j<=h-i; j+=2*i)
   MergeSort(aux, data, j, i+j-1, Min(j+2*i-1,h));
 }
}

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
成人在线一区二区| 欧美大片免费观看| 最新日韩中文字幕| 高清欧美性猛交xxxx黑人猛交| 动漫精品一区二区| 精品国产乱码久久久久久婷婷| 最近2019中文字幕在线高清| 日韩免费在线看| 亚洲国产91色在线| 国产成人在线精品| 91精品国产99久久久久久| 2019最新中文字幕| 欧美重口另类videos人妖| 91亚洲精品在线| 国产精品∨欧美精品v日韩精品| 91精品国产高清自在线| 中文字幕日韩欧美在线| 久久五月天色综合| 96精品视频在线| 91久久精品国产91久久性色| 日本高清久久天堂| 日韩国产欧美精品一区二区三区| 久久亚洲国产成人| 日韩成人激情视频| 亚洲最新av在线网站| 最近2019中文字幕大全第二页| 欧美性猛交xxxx免费看| 最新国产精品亚洲| 欧美日韩国内自拍| 日韩电影免费观看中文字幕| 亚洲欧洲激情在线| 97视频色精品| 九色精品免费永久在线| 日本久久久久久久久| 欧美在线视频一区| 欧美日韩国产中文精品字幕自在自线| 久久97久久97精品免视看| 中日韩午夜理伦电影免费| 成人激情视频网| 51精品国产黑色丝袜高跟鞋| 国产精品扒开腿做爽爽爽男男| 在线视频欧美日韩精品| 九九久久精品一区| 日本老师69xxx| 亚洲剧情一区二区| 欧美日韩精品二区| 国产精品福利网站| 国内精品小视频在线观看| 欧美国产欧美亚洲国产日韩mv天天看完整| 国产精品一区二区三区毛片淫片| 久久久亚洲成人| 亚洲在线视频福利| 91在线高清视频| 亚洲第一av网| 亚洲第一男人天堂| 欧美性猛交xxxxx免费看| 亚洲国产欧美一区| 亚洲午夜av久久乱码| 在线观看日韩专区| 国产精品成人免费电影| 日韩在线观看视频免费| 成人夜晚看av| 亚洲xxxx视频| 亚洲自拍偷拍区| 欧美性极品少妇精品网站| 国产综合视频在线观看| 欧美日韩在线视频一区二区| 在线观看国产精品淫| 午夜欧美大片免费观看| 欧美又大又硬又粗bbbbb| 亚洲精品电影在线观看| 日韩精品在线观看一区| 91久久久久久久久久久| 超碰精品一区二区三区乱码| 亚洲图片在线综合| www.亚洲人.com| 国产精品亚洲自拍| 精品国产一区二区三区四区在线观看| 久久亚洲春色中文字幕| 久久久亚洲福利精品午夜| 国产999精品视频| 92国产精品久久久久首页| 国产精品久久久久久久一区探花| 国产精品欧美风情| 国产精品久久久久久久电影| 欧美高清第一页| 亚洲成人a级网| 欧美激情精品久久久| 欧美高清无遮挡| 亚洲欧美国产精品久久久久久久| 国产mv免费观看入口亚洲| 亚洲国产精品电影在线观看| 欧美激情区在线播放| 国产精品欧美激情在线播放| 国产一区二区三区四区福利| 国产97人人超碰caoprom| 亚洲国产精品成人精品| 国内成人精品视频| 在线日韩精品视频| 欧美性猛交xxxx免费看| 国产精品久久视频| 亚洲桃花岛网站| 菠萝蜜影院一区二区免费| 超薄丝袜一区二区| 国产精品流白浆视频| 国产精品男人爽免费视频1| 亚洲电影免费观看| 97精品久久久中文字幕免费| 伊人伊人伊人久久| 日韩二区三区在线| 91精品视频在线| 亚洲精品aⅴ中文字幕乱码| 亚洲精品在线不卡| 久久久欧美精品| 欧美激情第6页| 欧美贵妇videos办公室| 成人性生交xxxxx网站| 日韩av网站在线| …久久精品99久久香蕉国产| 综合欧美国产视频二区| 91黑丝高跟在线| 欧美大片大片在线播放| 亚洲欧美第一页| 日韩欧美国产视频| 午夜精品久久久久久久99热浪潮| 亚洲精品有码在线| 啊v视频在线一区二区三区| 国产深夜精品福利| 国产欧美日韩精品专区| 少妇高潮久久久久久潘金莲| 国产午夜精品理论片a级探花| 黑人巨大精品欧美一区二区免费| 91亚洲精品久久久| 国产偷国产偷亚洲清高网站| 亚洲欧美国内爽妇网| 欧美尺度大的性做爰视频| 欧美日韩中国免费专区在线看| 亚洲xxxxx性| 久久亚洲精品国产亚洲老地址| 亚洲欧美日韩一区在线| 欧美福利小视频| 亚洲国产天堂久久综合| 精品久久久久久久久久ntr影视| 在线国产精品视频| 国产精品久久精品| 日韩精品电影网| 亚洲日本中文字幕| 亚洲精品小视频在线观看| 久久久精品一区二区| 精品视频在线播放| 国产精品视频精品视频| 久久69精品久久久久久国产越南| 亚洲福利视频二区| 国内久久久精品| 97视频在线观看亚洲| 成人激情视频在线播放| 色妞欧美日韩在线| 日韩毛片中文字幕| 国产精品视频资源| 国产精品永久免费视频| 久久久久一本一区二区青青蜜月| 欧美日本国产在线| 国产精品综合网站| 在线观看久久久久久|