自下而上归并排序 数组实现
生活随笔
收集整理的這篇文章主要介紹了
自下而上归并排序 数组实现
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?
void mergeSort(int a[], int len) {int *temp = new int[len];int gap = 1;while (gap < len) {for (int i = 0; i < len; i += gap * 2){int mid = i + gap > len - 1 ? len : i + gap;int end = mid + gap > len - 1 ? len : mid + gap;int j = i;int k = mid;int cur = i;while (j != mid && k != end){if (a[j] < a[k])temp[cur++] = a[j++];elsetemp[cur++] = a[k++];}while (j != mid)temp[cur++] = a[j++];while (k != end)temp[cur++] = a[k++];} for (int i = 0; i < len; ++i)a[i] = temp[i];gap = gap << 1;} delete[] temp; }?
轉載于:https://www.cnblogs.com/sdlwlxf/p/5113258.html
總結
以上是生活随笔為你收集整理的自下而上归并排序 数组实现的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: R语言心得-分词包的安装
- 下一篇: 挺水的一门课,发现全系都过了,就自己挂了