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

自下而上归并排序 数组实现相关推荐

  1. 归并排序--数组和链表的实现

    数组实现 /* **归并排序三步走:1 分割子问题:2 递归:3 合并子问题. */ #include "stdafx.h" #include <iostream> u ...

  2. c语言归并排序数组不固定,归并排序非递归实现C语言

    话说这个东西写到凌晨3点27分,都没有写好.刚才睡醒了写完的.主要遇到的问题就是当数组大小不是2的幂的时候发生的 right_end 越界的时候.我的逻辑起初偏于复杂,后来重新组织逻辑,当发生 rig ...

  3. 简单入门排序算法(直接插入排序,折半插入排序,希尔排序,冒泡排序,堆排序,归并排序)

    预备知识(排序数组的创建20,100 ,500 个随机数进行排序) "Struct.h" #pragma once #include<iostream> #includ ...

  4. 排序算法总结和java实现

    排序算法总结和java实现 0.排序算法说明 0.1 排序的定义 0.2 术语说明 0.3 算法总结 0.4 算法分类 0.5 比较和非比较的区别 1.冒泡排序 1.1 算法描述 1.2 动图演示 1 ...

  5. 【算法】八大经典排序算法详解

    我记得上大学的时候,老师一直跟我们强调:"算法才是编程的灵魂",找工作面试的时候,算法和数据结构也是绝对不可避免的,面试官可能一言不合就让你手写一个排序算法. 我把最经典的八大排序 ...

  6. 河工计院ACM2022寒假培训题单以及超详细题解

    目录 货仓选址 校门外的树 奖学金 蛇形矩阵 找硬币 回文平方 品种邻近 平方矩阵 II 十三号星期五 阶乘 干草堆 火星人 整数集合划分 最大的和 剪绳子 分巧克力 a^b 数独检查 ISBN号码 ...

  7. anthor copy from interview

    点击跳转:http://www.apkbus.com/home.php?mod=space&do=blog&uid=88452&id=52994点击打开链接 注:帖子来自安卓巴 ...

  8. 面试总结及相关知识点汇总

    最近因为离职,又因为在原来的公司也担任"要职",所以尝试了面试者和被面试者两个不同的角色,闲来无事,就来总结下这期间的心得,以及这期间所整理的博客. 首先申明该心得不主要是为面试者 ...

  9. 一些大公司面试题整理

    腾讯面试题 1.int a = 1; int result = a+++3<<2; 2.int a = 2; int result = (a++ > 2)?(++a):(a+=3); ...

最新文章

  1. 麻省理工学院开放 2018 自动驾驶课程
  2. 一文揭秘微服务架构统一安全认证设计与实践!
  3. 用bash命令得到Windows一个目录下的所有文件并且把结果输入到一个文件
  4. python【蓝桥杯vip练习题库】ADV-185五次方数(枚举)
  5. STL中的set容器的一点总结
  6. centos 安装 telnet
  7. 点击按钮显示div并向div中传递参数
  8. 杭州飞畅告诉你工业环网交换机到底是什么?
  9. Java学习笔记29(IO字符流,转换流)
  10. linux 免密登录
  11. 使用Qt框架开发http服务器问题的记录
  12. Flask 的路由系统 FBV 与 CBV
  13. python做出代码结构图_数据结构之图的代码实现(使用Python实现)
  14. Linux——DHCP服务器搭建
  15. buuctf misc部分wp
  16. 【MATLAB】构建WS小世界网络
  17. IL汇编语言介绍(译)
  18. 互联网巨头追捧的“中台”战略,有多重要?
  19. 【1月英语—罗塞塔之爱】
  20. Java买飞机票代码

热门文章

  1. M2Eclipse:Maven Eclipse插件无法搜索远程库的解决方法
  2. svn: error while loading shared libraries: libsvn_client-1.so.0
  3. OSGi介绍及OSGi的Bundle应用
  4. java操作LINUX上文件,设置权限问题
  5. CAS服务下单点登录(服务端与客户端)
  6. 记录一次redis事故
  7. Docker 获取镜像 - 一
  8. WebUploader 设置单个文件上传
  9. JQuery------各种版本下载
  10. linux 没有root登陆