算法导论——归并排序
来源:互联网 发布:win7网络连接图标作用 编辑:程序博客网 时间:2024/05/14 13:35
前面写过选择排序和插入排序,下面是归并排序,如下:
#include<iostream>using namespace std;const int sentry = 999999;void Merge( int ia[], size_t p, size_t q, size_t r){int a1[10], a2[10];size_t len1 = q - p + 1,len2=r-q;for (int i = 0; i <len1; ++i)a1[i] = ia[p+i];a1[len1] = sentry;for (int i = 0; i <len2; ++i)a2[i] = ia[q+i+1];a2[len2] = sentry;int b = 0, c = 0;for (int i = p; i <= r; ++i){if (a1[b] >= a2[c])ia[i] = a2[c++];elseia[i] = a1[b++];}}void Merge_sort( int ia[],size_t p,size_t r){if (p < r ){int q = (p + r) / 2;Merge_sort(ia, p, q);Merge_sort(ia, q + 1, r);Merge(ia, p, q, r);}}int main(){int a[20];int n;cout << "input the size of array:" << endl;cin >> n;for (int i = 0; i < n; ++i)cin >> a[i];//input arrayMerge_sort(a, 0, n-1);for (int i = 0; i < n; ++i)cout << a[i] << " ";cout << endl;return 0;}
写了一下午终于完工。
0 0
- 算法导论——归并排序
- 算法导论笔记——归并排序
- 算法导论例程——归并排序
- 算法导论——归并排序
- 归并排序——算法导论学习
- 算法导论—归并merge排序
- 【算法导论】归并排序
- [算法导论]归并排序
- 算法导论-----归并排序
- 【算法导论】归并排序
- 算法导论-归并排序
- 算法导论-归并排序
- 算法导论 归并排序
- 算法导论-归并排序
- 《算法导论》--归并排序
- 算法导论--归并排序
- 算法导论一——关于MergeSort(归并排序)总结
- 算法导论P17 归并排序
- 通过项目逐步深入了解Spring MVC(一)
- JZOJ2724. 【3.16XJ模拟题】圆
- 20161219
- PHP基础 四
- eclipse搭建storm的maven工程以及wordcount事例编写
- 算法导论——归并排序
- 剑指offer(15)-连续子数组的最大和
- Qt中字符串编码工具类
- 兰州大学coremail校内邮箱客户端设置方法
- Android Butterknife 8.4.0 使用方法总结
- 比赛题号
- OpenCV中图像处理函数
- node, webpack,gulp 搜藏
- 第三节 windows下搭建FTP服务器