直接插入排序和希尔排序
来源:互联网 发布:射手座女生 知乎 编辑:程序博客网 时间:2024/04/30 02:00
直接插入排序属于简单排序,是一种稳定排序算法,希尔排序是直接插入排序的改进,降低了时间复杂度,现在为了方便交流和自己今后的学习,将自己学习插入排序和希尔排序的代码在博客中分享,一块交流。
//直接插入排序 public static void DirectInsertSort(int[] arrays) { for (int i=1;i<arrays.length;i++) { int j; if (arrays[i]<arrays[i-1]) { //若后一个数要插入的数比前面已经排好序的数要小,就在前面已排好序的数组中找到合适的位置插入 int temp=arrays[i]; for ( j=i-1;j>=0&&arrays[j]>temp;j--) { //开始后移 arrays[j+1]=arrays[j]; } arrays[j+1]=temp;//插入到正确位置 } } Print(arrays); } //希尔排序 public static void ShellSort(int[] arrays) { int increment=arrays.length; int j; do { increment=increment/3+1; for (int i=increment;i<arrays.length;i+=increment) {//通过一个增量实现跳跃式移动,增加排序效率 if (arrays[i]<arrays[i-increment]) { int temp=arrays[i]; for ( j=i-increment;j>=0&&arrays[j]>temp;j-=increment) arrays[j+increment]=arrays[j]; arrays[j+increment]=temp; } } }while (increment>1); Print(arrays); }
其中print(int[] arrays)是一个输出数组中的每一个元素的函数
0 0
- 插入排序(直接 和 希尔)
- 直接插入排序和希尔排序
- java直接插入排序和希尔排序
- 直接插入排序和希尔排序
- 直接插入排序和希尔排序
- 直接插入排序和希尔排序
- 直接插入排序和希尔排序
- 直接插入排序和希尔排序
- 直接插入排序和希尔排序
- 【直接插入排序】和【希尔排序】
- 直接插入排序和希尔排序
- 数据结构排序--直接插入和希尔排序
- 插入排序:直接插入排序和希尔排序
- 关于插入排序 直接插入排序和希尔排序
- 插入排序--直接插入排序和希尔排序
- 插入排序--直接插入排序和希尔排序
- 插入排序类:直接插入排序和希尔排序
- 算法-排序-插入排序(直接插入和希尔排序)
- 获取系统时间的几种方式
- 416_设置状态栏颜色
- 第十二周项目三进制转换
- 野蛮生长读书笔记
- 函数指针与函数的数组指针
- 直接插入排序和希尔排序
- GitHub使用教程for Eclipse
- 417_动态创建View
- C#字符串分割、截取
- Can't load IA 32-bit .dll on a AMD 64-bit platform
- 定时器
- 配置pycaffe
- Android中Service的使用详解和注意点
- 文章标题