在线亚洲黄色-在线亚洲观看-在线亚洲电影-在线亚洲成人-岛国大片在线观看免费版-岛国大片在线播放高清

菜鳥,合并排序的c++代碼

導讀using namespace std。void merge(vector& A.int p.int q.int r) {。int len1 = q - p + 1。int len2 = r - q。vector L(len1 + 1.0)。vector R(len2 + 1.0)。for (int i = 0;i <;len1;i++) {。L[i] = A[p + i]。};for (int j = 0;j <;len2;j++) {。R[j] = A[q + 1 + j]。};L[len1] = INT_MAX。R[len2] = INT_MAX。int i = 0.j = 0。for (int k = p;k <;r;k++) {。

改進后的代碼如下:

using namespace std;

void merge(vector& A, int p, int q, int r) {

int len1 = q - p + 1;

int len2 = r - q;

vector L(len1 + 1, 0);

vector R(len2 + 1, 0);

for (int i = 0; i < len1; i++) {

L[i] = A[p + i];

}

for (int j = 0; j < len2; j++) {

R[j] = A[q + 1 + j];

}

L[len1] = INT_MAX;

R[len2] = INT_MAX;

int i = 0, j = 0;

for (int k = p; k < r; k++) {

if (L[i] <= R[j]) {

A[k] = L[i];

i++;

} else {

A[k] = R[j];

j++;

}

}

}

void mergeSort(vector& a, int p, int r) {

if (p < r) {

int q = (p + r) / 2;

mergeSort(a, p, q);

mergeSort(a, q + 1, r);

merge(a, p, q, r);

}

}

int main() {

int n;

cout << "Please input the number of non-negative numbers:" << endl;

cin >> n;

vector a(n, 0);

cout << "Please input " << n << " non-negative numbers:" << endl;

for (int i = 0; i < n; i++) {

cin >> a[i];

}

mergeSort(a, 0, n - 1);

for (int j = 0; j < n; j++) {

cout << a[j] << " ";

}

return 0;

}

這段代碼實現了歸并排序算法,并對輸入的非負整數數組進行了排序。首先,它定義了一個merge函數,用于合并兩個有序數組。接下來,mergeSort函數遞歸地對數組進行排序。在主函數中,用戶可以輸入非負整數的個數和具體的數值,程序將輸出排序后的結果。

歸并排序是一種穩定的排序算法,具有O(n log n)的時間復雜度。它通過將數組分成較小的部分,然后合并這些部分來實現排序。這種方法確保了排序的正確性,同時保持了算法的穩定性。

需要注意的是,代碼中使用了STL中的vector容器來存儲數組,這使得代碼更加簡潔和易讀。同時,代碼中添加了邊界條件處理,以確保算法的正確性和健壯性。

為你推薦
資訊專欄
熱門視頻
相關推薦
天庭在面相代表什么 《驪歌行》講的是哪個朝代的故事? 鋪水電管線可以不用開槽嗎? 燃氣灶點火正常,用幾分鐘就滅了 天龍八部中喬峰三兄弟究竟誰武功最厲害? 鐵絲網圍欄有什么特點 無頭騎士異聞錄的動漫是怎么回事 正確的練字方法是什么? 苦參治什么病 選擇你心中的10大網游小說 精心優選真的是最便宜的定期壽險嗎?怎么投保呢? 在網絡中,什么叫‘鴿子” 怎樣做好一個品質管理者?? 上海公交查詢 中醫學里所謂的七情是何意? 陽光城在哪個地方? 18周做了三維還有必要做四維嗎 張家口有什么好玩 糖尿病治療不好,糖尿病并發癥能不能控制住 根據等壓線分布圖如何判斷高低氣壓中心,風向和天氣。圖中只交代了緯度值。等壓線密集的就是高壓中心嗎 ? 不思議迷宮骷髏島會出哪些道具 萬寶電冰箱冬天不起動是什么原因 “商轉公”政策規定有哪些? 低保申請如何寫 我想學習中國象棋,有什么好的途徑或者軟件介紹嗎? 訪問學者如何申請改派最容易成功的四個方面 瓦楞紙是什么? 三只小熊 韓語歌詞帶中文翻譯 請教大神幫我分析一下這個氣路圖,我沒有金幣,但我萬分感謝! 藝術生文化課輔導班怎么選? 外國的一部電影一個小偷跟一個小孩的電影,最后在一個草地上直升飛機抓他。后面小男孩還是哭著要幫這個 家長的冬天作文400字 怎樣去除滾筒洗衣機里的異味? 氨水聞多了有會么副作用 衛生間防水一般需要涂刷幾遍才能達到厚度? 如何才能講好公開課? 位置度測量原理 音樂傳播專業是做什么的 門窗的木材使用松木有什么優缺點? 屬狗的是幾幾年出生?
Top 主站蜘蛛池模板: 欧美综合图区亚洲综合图区 | 蜜桃视频一区二区三区四区 | 制服一区| 亚洲欧美日韩综合精品网 | 日韩精品一区二区三区不卡 | 国产精品综合色区在线观看 | 日本三级成人中文字幕乱码 | 亚洲精品不卡久久久久久 | 久久久久久久国产a∨ | 亚洲一区中文字幕 | 国产成人久久精品二区三区牛 | 精品成人一区二区三区免费视频 | 国产福利91精品一区二区 | 日本一区二区三区免费在线观看 | 91麻豆国产精品91久久久 | 国产成人h福利小视频在线观看 | 久久亚洲伊人成综合人影院 | 欧美高清一区二区三区 | 国产视频中文字幕 | 日韩在线网址 | 国产欧美在线观看视频 | 欧美日韩亚洲第一页 | 亚洲欧美日韩三级 | 欧美一级视频在线观看 | 国产日韩在线观看视频网站 | 亚洲欧美久久精品一区 | 亚洲色欧美 | 成人毛片在线播放 | 一级毛片免费毛片毛片 | 日韩伦理亚洲欧美在线一区 | 欧美韩日在线 | 国产不卡在线看 | 久久福利免费视频 | 亚洲精品一二三 | 国产日韩欧美一区 | 国产免费高清 | 欧美精品在线观看视频 | 精品一区二区在线 | 欧美综合国产 | 国产 欧美 日韩 在线 | 成人午夜精品久久久久久久小说 |