```java
在这里插入代码片
```//插入排序,折半public static  void sort(int[] array) {int temp;int j;for (int i = 1; i <array.length; i++) {int low = 0;int hight = i - 1;//这一步的if 是灵魂,我觉得这一步可以省下一些步骤.自创if(array[i]<array[i-1]) {temp = array[i];while (hight >= low) {int mid = (low + hight) / 2;if (array[mid] > temp) {hight = mid - 1;} else {low = mid + 1;}}for (j = i - 1; j >= low; j--) {array[j + 1] = array[j];}array[j + 1] = temp;}}}

折半插入排序的最强版相关推荐

  1. 排序算法java版,速度排行:冒泡排序、简单选择排序、直接插入排序、折半插入排序、希尔排序、堆排序、归并排序、快速排序...

    先推荐一篇关于排序算法的文章:http://www.cppblog.com/guogangj/archive/2009/11/13/100876.html 本文思路部分来源于上篇文章,但测得的结果似乎 ...

  2. java 快速排序算法简单_排序算法java版,速度排行:冒泡排序、简单选择排序、直接插入排序、折半插入排序、希尔排序、堆排序、归并排序、快速排序......

    先推荐一篇关于排序算法的文章:http://www.cppblog.com/guogangj/archive/2009/11/13/100876.html 本文思路部分来源于上篇文章,但测得的结果似乎 ...

  3. 折半插入排序算法详解之C语言版

    一.算法原理 折半插入排序是插入排序方法中一种,相比较与直接插入排序算法,减少了排序过程中比较次数,也是一种常用的排序算法. 折半插入排序算法基本原理是将折半查找方法与直接插入排序方法相结合,也就是在 ...

  4. 数据算法之折半插入排序(binInsertSort)的Java实现

    本文的代码来自于<数据结构与算法(JAVA语言版)>,是笔者在网上找到的资料,非正式出刊版物.笔者对代码一些比较难以理解的部分添加了注释和图解,欢迎大家来讨论. 折半插入排序方法的思想是, ...

  5. C语言——十四种内部排序算法【直接插入排序-冒泡排序-选择排序-插入排序-希尔排序-归并排序-快速排序-堆排序-折半插入排序-二分查找-路插入排序-表插入排序-简单选择排序-直接选择排序-树形选择】

    目录: 一:插入排序 A:直接插入排序 1.定义: 2.算法演示 实例1: 3.基本思想 4.排序流程图 实例1: B:希尔排序 1.定义: 2.算法演示 实例2: C:其他插入排序 a:折半插入排序 ...

  6. java 折半插入排序_[Java代码] Java实现直接插入排序和折半插入排序算法示例

    1 排序思想: 将待排序的记录Ri插入到已经排好序的记录R1,R2,--,R(N-1)中. 对于一个随机序列而言,就是从第二个元素开始,依次将这个元素插入到它之前的元素中的相应位置.它之前的元素已经排 ...

  7. 折半插入排序稳定吗_C++实现经典算法--折半插入排序

    本节用c++实现经典的折半插入排序,也是王道上总结得插入排序的第二种算法,思路很清晰,首先将用户输入保存在数组中,然后从数组第二个元素开始遍历整个序列,每次将元素跟其左边邻居元素比较,如果出现小于其邻 ...

  8. 简单插入排序,折半插入排序和2路插入排序 c源码

    以下三种插入排序时间复杂度均为O(n^2) 简单插入排序,简单直接.假定数组有序,插入 i, 从后往前遍历找到适合位置 j,移动 j +1 ~ i -1往后一位,插入i到j中. void insert ...

  9. 三种插入排序算法:直接插入排序、折半插入排序、希尔插入排序

    一.直接插入排序 空间复杂度:O(1) 时间复杂度:O(n^2) 稳定性:稳定 适用性:顺序表和链表 //直接插入排序 void InsertSort1(int A[],int n){int i,j, ...

最新文章

  1. 区块链学堂:区块链引子
  2. 14年阿里巴巴管理经验总监:教你管理7步心法(演讲全文)
  3. Oracle中的NULL(一、问题引入)
  4. 2020 有哪些不容错过的前端技术趋势?
  5. Sentry : Spark-sql 读取hive数据 权限问题
  6. arraylist扩容是创建新数组吗 java_arraylist扩容机制要怎么实现?arraylist怎么扩容...
  7. Spring_自动装配
  8. 基于顺序存储结构的图书信息表的图书去重(C++)
  9. 设计模式(二十三)—— 模板方法
  10. Linux “百变”秀:今天 Windows 95,明天 Mac OS 9
  11. Java实现二分查找算法(非递归)
  12. 学习delphi FMX 的一些资料
  13. win7 计算机休眠,WIN7如何关闭睡眠和休眠方式(真正的)
  14. 【leetcode】出界的路径数----迭代问题与计算思维
  15. 【C语言程序设计】C语言求最小公倍数(详解版)!
  16. 主叫用户、被叫用户、局内呼叫、局间呼叫、发话端局、受话端局 等定义
  17. 车牌识别之二:字符分割
  18. 算法相关-互联网计算广告学
  19. 共享汽车死亡前仆后继,巨头们要排队共赴黄泉?
  20. CV_RETR_TREE’ was not declared in this scope

热门文章

  1. WGS84经纬度坐标6度分带高斯投影正算
  2. 解决ThinkPad X200找不到无线网卡硬件的问题
  3. 达观数据中标大华智能搜索平台,助力企业打造知识共享系统
  4. centos下rabbitmq启动失败:
  5. 魔兽时间 一键宏 输出的原理与笔记
  6. Spring Cloud Alibaba 2021.0.1.0 版本发布啦
  7. Android 实现仿微信朋友圈九宫格图片+NineGridView+ImageWatcher(图片查看:1.预览,2.拖动,3.放大,4.左右滑动,5.长按保存到手机)的功能
  8. 租车信息系统数据库设计(1)
  9. 你的走路姿势正确吗?步态不对牵连多种疾病
  10. HTML下拉菜单怎么做成横向,纯css实现横向下拉导航菜单(可做左侧类目导航)