本文主要详解了Java语言的8大排序的基本思想以及实例解读,详细请看下文:

8种排序之间的关系:

1, 直接插入排序

(1)基本思想:在要排序的一组数中,假设前面(n-1)[n>=2] 个数已经是排

好顺序的,现在要把第n个数插到前面的有序数中,使得这n个数

也是排好顺序的。如此反复循环,直到全部排好顺序。

(2)实例

(3)用java实现

1 packagecom.njue;2

3 public classinsertSort {4 publicinsertSort(){5 inta[]={49,38,65,97,76,13,27,49,78,34,12,64,5,4,62,99,98,54,56,17,18,23,34,15,35,25,53,51};6 int temp=0;7 for(int i=1;i=0&&temp

12 }13 a[j+1]=temp;14 }15 for(int i=0;i

2,希尔排序(最小增量排序)

(1)基本思想:算法先将要排序的一组数按某个增量d(n/2,n为要排序数的 个数)分成若干组,每组中记录的下标相差d.对每组中全部元素进行直接插入排序,

然后再用一个较小的增量(d/2)对它进行分组,在每组中再进行直接插入 排序。当增量减到1时,进行直接插入排序后,排序完成。

(2)实例:

(3)用java实现

1 public classshellSort {2 publicshellSort(){3 int a[]={1,54,6,3,78,34,12,45,56,100};4 double d1=a.length;5 int temp=0;6 while(true){7 d1= Math.ceil(d1/2);8 int d=(int) d1;9 for(int x=0;x=0&&temp

java排序的例子_Java的8大排序的基本思想及实例解读相关推荐

  1. java线程安全例子_Java总结篇系列:Java多线程(三)

    本文主要接着前面多线程的两篇文章总结Java多线程中的线程安全问题. 一.一个典型的Java线程安全例子 1 public classThreadTest {2 3 public static voi ...

  2. java排序算法代码_Java实现八种排序算法(代码详细解释)

    package八大排序算法;importjava.util.Arrays;importorg.junit.Test;/*** 1.插入排序 直接插入排序.希尔排序 折半插入排序 * 2.交换排序 冒泡 ...

  3. 有关java的参考软件_Java的相关的排序实现(参考软件设计师教程)

    package com.liuxt.sort; import java.io.BufferedReader; import java.io.IOException; import java.io.In ...

  4. java try catch 例子_Java异常处理综合例子(try、catch、finally、throws、throw)

    Java异常处理综合例子(try.catch.finally.throws.throw) 佟强 2009年11月4日 http://blog.csdn.net/microtong package cn ...

  5. 希尔排序是一种稳定的排序算法_全面解析十大排序算法之四:希尔排序

    点击上方蓝字关注我们吧 1. 十种排序算法的复杂度和稳定性 时间复杂度:一个算法消耗所需要的时间 空间复杂度:运行一个算法所需要的内存时间 稳定性:如一个排列数组:1.4.5.6.4.7. 此时有一对 ...

  6. js排序的时间复杂度_JavaScript实现十大排序算法

    一 : 冒泡排序 人们开始学习排序算法时,通常都先学冒泡算法,因为它在所有排序算法中最简单.然而, 从运行时间的角度来看,冒泡排序是最差的一个,接下来你会知晓原因 冒泡排序比较所有相邻的两个项,如果第 ...

  7. java 多条件比较_Java 多条件复杂排序小结

    这里面最复杂的就是第3点,对秒杀活动进行排序,排序条件多,排序条件使用各不相同,在笔试中给我带来了很大的困扰,最后当然也是没做完啦···· 解决方案 吃完晚饭开始寻找解决方法,觉得应该会很有意思,果然 ...

  8. java try catch 例子_java try catch

    try catch机制非常好.那些觉得try catch不行的人,是他们自己的水平有问题,无法理解这种机制.并且这群人写代码不遵守规则,喜欢偷懒,这才造成try catch不好的错觉. 详细解释: 1 ...

  9. java函数式编程例子_java函数式编程Lambda表达式的示例(一)

    函数式编程是时下比较流行的编程方式了,很多新兴的编程语言都对函数式编程有了比较好的支持,她有别于传统的命令式编程,可以将函数(执行代码的过程)作为参数进行传递.JAVA也意识到了函数式编程的重要性,在 ...

最新文章

  1. GPT Timeline
  2. linux 内核编译错误 undefined reference to '__mutex_lock_slowpath'
  3. java 注解_怎样理解 Java 注解和运用注解编程?
  4. Latex指南(part1)--利用beamer制作学术报告文稿
  5. 不是每一个缺钱的人都能贷款!
  6. 如何使用Node.js,Express和MongoDB设置GraphQL服务器
  7. 【LeetCode笔记】53. 最大子序和(Java、动态规划)
  8. MySQL中清空表和截断表的区别(新手入门)
  9. Android在Service中显示Dialog
  10. [译] 使用 iPhone X 与 Maya 实现快速面部捕捉
  11. python可以做哪些有趣的事作文_那些有趣的事作文500字
  12. 关于C#中动态加载AppDomain的问题
  13. G - Power Strings
  14. 出版了两本实体书,写了9本开源电子书,还上了百度百科,冰河这是要起飞了吗?(建议收藏)
  15. C语言实现顺序表基本操作
  16. C语言与或非应用案例,与或非(生活中与或非例子)
  17. ie11无法使用,卸载后无法安装,错误代码0x8000ffff
  18. Mac不能复制拷贝写入文件到移动硬盘,U盘怎么办
  19. 关于.length和.length()
  20. 真无线蓝牙耳机哪个品牌好?2023年真无线降噪耳机盘点

热门文章

  1. 图像合成与风格转换实战
  2. 2021年大数据常用语言Scala(二十八):scala面向对象 MAVEN依赖和类
  3. 山西农业大学c语言答案,第一章C语言及程序设计概述-东北农业大学教务处.doc...
  4. Android textview 只显示一行,多余部分显示.....
  5. 在Andoird studio 中用代码实现setId报错,而在ecplise中可以,的处理方法
  6. 最小化局部边际的合并聚类算法(中篇)
  7. 云计算DHT分布式存储
  8. IntelliJ IDEA 自动编译功能无法使用,On 'update' action:选项里面没有update classes and resources这项...
  9. 结队编程-基于gui的四则运算生成器
  10. 百度地图JavaScript API自定义覆盖物、自定义信息窗口增删时的显示问题