目录

一、插入排序

二、希尔排序


一、插入排序


public class test {public static void main(String[] args) {int[] arr = {100, 1, 1, 2, 3, 22, 1, 23, 12, 22, 5};InsertSort(arr);}private static void InsertSort(int[] arr) {for (int i = 1; i < arr.length; i++) {int temp = arr[i];int j = i - 1;while (j >= 0) {if (temp < arr[j]) {arr[j + 1] = arr[j];} else {break;}j--;}arr[j + 1] = temp;}System.out.println("最终排序结果");printArr(arr);}private static void printArr(int[] arr) {for (int i = 0; i < arr.length; i++) {System.out.print(arr[i] + " ");}}}

二、希尔排序

希尔排序是对插入排序的优化:

希尔排序 | 菜鸟教程

Java 插入排序 希尔排序相关推荐

  1. 【排序算法】冒泡排序|选择排序|插入排序|希尔排序

    文章目录 冒泡排序 选择排序 插入排序 希尔排序 冒泡排序   第一个元素开始向第二个元素比较,若大于则交换位置,不大于则不动.然后第二个元素和第三个元素比较,再然后第三个元素和第四个元素比较-一直比 ...

  2. 直接插入排序 希尔排序 冒泡排序 快速排序 直接选择排序 堆排序 归并排序 基数排序的算法分析和具体实现 ...

    排序分为内部排序和外部排序 内部排序是把待排数据元素全部调入内存中进行的排序. 外部排序是因数量太大,把数据元素分批导入内存,排好序后再分批导出到磁盘和磁带外存介质上的排序方法. 比较排序算法优劣的标 ...

  3. 插入排序(折半查找优化插入排序||希尔排序) _清风明月

    插入排序:插入排序分为三个步骤: 1. 找位置.(序列可分为两个部分,第一个部分是有序序列,其二是非有序序列.当为有序序列时,查找可以改进为折半查找,优化算法速度.) 2. 移动. 3. 插入.查找的 ...

  4. Java数据结构——直接插入排序+希尔排序+冒泡排序

    文章目录 一.插入排序 (一).什么是插入排序 (二).图例 (三).Java代码 二.希尔排序 (一).什么是希尔排序 (二).图例 (三).Java代码 三.冒泡排序 (一).什么是冒泡排序 (二 ...

  5. 【Java】5大排序算法总结(插入排序+希尔排序+选择排序+堆排序+冒泡排序)

    快速导航: 1. 稳定性 2 . 插入排序 3. 希尔排序 4. 选择排序 5. 堆排序 6 冒泡排序 1. 稳定性 两个相等的数据,如果经过排序后,排序算法能保证其相对位置不发生变化,则我们称该算法 ...

  6. JAVA中希尔排序去的讲解_java 中基本算法之希尔排序的实例详解

    java 中基本算法之希尔排序的实例详解 希尔排序(Shell Sort)是插入排序的一种.也称缩小增量排序,是直接插入排序算法的一种更高效的改进版本.希尔排序是非稳定排序算法.该方法因DL.Shel ...

  7. java数组希尔排序及时间复杂度

    希尔排序是由插入排序延伸而来的,因为插入排序的最后一个数要是最小数就要把它一步一步的插入到最前面,太浪费时间,所以希尔排序是对他进行分组,让它们每次隔一半进行交换(即每次相邻数组长度一半的两个数进行比 ...

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

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

  9. 排序java算法—— 希尔排序(含克努特排列)

    四.希尔排序 ---针对数量巨大时,再用插入排序则显得低效.故对插入排序进行升级,希尔排序也称为递减增量排序算法. package com.xu.Array; import java.util.Arr ...

最新文章

  1. Splunk安装和配置及源码编译安装SVN
  2. 顺利通过scjp认证考试
  3. mysql dump sql文件_用mysqldump导出sql文件的问题。
  4. 20200728:力扣199周周赛题解(上)
  5. 毕业论文酒店管理系统java,基于J2EE酒店管理系统设计与实现
  6. 软件如何实现屏幕共享?
  7. linux如何卸载lightdm,告诉你Ubuntu安装LightDM的方法及命令
  8. 悠漓带你玩转C语言(函数)
  9. 人像抠图软件哪个好?这些软件助你实现人像抠图
  10. 车道线检测---色彩空间变换
  11. 初始java ~ 逻辑控制
  12. 微信、小程序、h5等实名认证接口
  13. android 验证码之短信验证(云之讯短信平台)
  14. dom4j生成xml节点内容换行
  15. 获取上一个交易日—python
  16. html课堂笔记,Day1-课堂笔记-HTML
  17. Unity3D运行中改变鼠标指针图标
  18. 信号与系统(考研/保研面试用)
  19. Pico Unity XR SDK开发笔记(1)
  20. python画五角星和六角星程序_python画五角星和六角星程序-阿里云开发者社区

热门文章

  1. 水调歌头·重上井冈山
  2. 【Linux】Linux下文件名批量编号
  3. 代写编程的作业、笔试题、课程设计,包括但不限于C/C++/Python
  4. IPGuard忘记超级管理员(Admin)密码
  5. 仁兄,可曾听闻支持向量机?
  6. 互联网日报 | 华为发布首款商用台式机;京东健康正式登陆港交所;苹果推出首款头戴式耳机...
  7. C#读取一个双精度浮点数Double方法-自已封装
  8. linux创建名字拼音的yum文件,Linux创建yum仓库
  9. 勤哲excel服务器出入库管理系统,如何利用勤哲Excel服务器制作库存管理系统.doc...
  10. KIEl的kengen获取方法