欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    常见排序算法代码(冒泡排序、选择排序、插入排序、希尔排序、快速排序、归并排序、堆排序、基数排序)(共6页).doc

    • 资源ID:11399753       资源大小:21KB        全文页数:6页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    常见排序算法代码(冒泡排序、选择排序、插入排序、希尔排序、快速排序、归并排序、堆排序、基数排序)(共6页).doc

    精选优质文档-倾情为你奉上/ 冒泡排序void BuddleSort(int array, int n)int i, j;bool flag = true;for (i = 1; flag && i < n; i+)flag = false;for (j = 0; j < n - i; j+)if (arrayj > array j + 1)flag = true;int temp = arrayj;arrayj = arrayj + 1;arrayj + 1 = temp;/ 选择法void SelectSort(int array, int n)int i, j, k;for (i = 0; i < n; i+)k = i;for (j = i + 1; j < n; j+)if (arrayj < arrayk)k = j;if (k != i)int temp = arrayk;arrayk = arrayi;arrayi = temp;/ 插入排序void InsertSort(int array, int n)int i, j, temp;for (i = 1; i < n; i+)temp = arrayi;j = i - 1;while (j >= 0 && arrayj > temp)arrayj + 1 = arrayj;j-;arrayj + 1 = temp;/ 快速排序void QSort(int array, int l, int r)int i = l, j = r;int temp = arrayl;while (i < j)while (i < j && temp < arrayj)j-;if (i < j)arrayi = arrayj; i+;while (i < j && temp > arrayi)i+;if (i < j)arrayj = arrayi;j-;arrayi = temp;if (l < i)QSort(array, l, i - 1);if (j < r)QSort(array, j + 1, r);/ 希尔排序void ShellSort(int array, int n)int i, j, d = n;while (d != 1)d = (d + 1) / 2;for (i = d; i < n; i+)int temp = arrayi;j = i - d;while (j >= 0 && arrayj > temp)arrayj + d = arrayj;j -= d;arrayj + d = temp;/ 堆排序void AdjustHeap(int array, int i, int n)int j = 2 * i, temp;while (j <= n)if (j < n && arrayj - 1 < arrayj)j += 1;if (arrayi - 1 < arrayj - 1)temp = arrayi - 1;arrayi - 1 = arrayj - 1;arrayj - 1 = temp;i = j;j = 2 * i;elsebreak;void HeapSort(int array, int n)int i, temp;/ 将初始无序数转为小根堆for (i = n / 2; i > 0; i-) AdjustHeap(array, i, n); / 进行n - 1趟排序for (i = n; i > 1; i-)temp = array0;array0 = arrayi - 1;arrayi - 1 = temp;AdjustHeap(array, 1, i - 1);/ 归并排序#include <limits.h>void Merge(int array, int p, int q, int r)int n1 = q - p + 1;int n2 = r - q;int *L, *R, i, j, k;L = new intn1 + 1;R = new intn2 + 1;for (i = 0; i < n1; i+)Li = arrayp + i;for (i = 0; i < n2; i+)Ri = arrayq + 1 + i;Ln1 = INT_MAX;Rn2 = INT_MAX;for (i = 0, j = 0, k = p; k <= r; k+)if (Li <= Rj)arrayk = Li+;elsearrayk = Rj+;delete L;delete R;void MergeSort(int array, int p, int r)if (p < r)int q = (p + r) / 2;MergeSort(array, p, q);MergeSort(array, q + 1, r);Merge(array, p, q, r);elsereturn;/ 基数排序#define NUM 10void RadixSort(int Array, int n, int D)int i, j, k, l = 1, d = 0;/ 分配中间存储空间int *ppArr = new int*NUM;for (i = 0; i < NUM; i+)ppArri = new intn;int pNumNUM;/ 分趟分配收集while (d < D)for (i = 0; i < NUM; i+)pNumi = -1;for (i = 0; i < n; i+)j = (Arrayi / l) % NUM;k = +pNumj;ppArrjk = Arrayi;for (k = 0, i = 0; i < NUM; i+)for (j = 0; j <= pNumi; j+)Arrayk+ = ppArrij;d+;l *= 10;专心-专注-专业

    注意事项

    本文(常见排序算法代码(冒泡排序、选择排序、插入排序、希尔排序、快速排序、归并排序、堆排序、基数排序)(共6页).doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开