java 堆排序方式_幾種排序方式的java實現(02:希爾排序,歸並排序,堆排序)
/** 希爾排序:先取一個小於n的整數d1作為第一個增量,
* 把文件的全部記錄分成(n除以d1)個組。所有距離為d1的倍數的記錄放在同一個組中。
* 先在各組內進行直接插入排序;然后,取第二個增量d2
* 直至所取的增量dt=1(dt
public classShellSort {public static void sort(int[] data) {for (int i = data.length / 2; i > 2; i /= 2) {for (int j = 0; j < i; j++) {
insertSort(data, j, i);
}
}
insertSort(data,0, 1);
}/***@paramdata
*@paramj
*@parami*/
private static void insertSort(int[] data, int start, intinc) {for (int i = start + inc; i < data.length; i +=inc) {for (int j = i; (j >= inc) && (data[j] < data[j - inc]); j -=inc) {
SortTest.swap(data, j, j-inc);
}
}
}
}/** 屬於插入類排序,是將整個無序列分割成若干小的子序列分別進行插入排序
* 排序過程:先取一個正整數d1
* 組內進行直接插入排序;然后取d2
* 初始:d=5 49 38 65 97 76 13 27 49 55 04
* 49 13 |-------------------|
* 38 27 |-------------------|
* 65 49 |-------------------|
* 97 55 |-------------------|
* 76 04 |-------------------|
* 一趟結果 13 27 49 55 04 49 38 65 97 76
* d=3 13 27 49 55 04 49 38 65 97 76
* 13 55 38 76 |------------|------------|------------|
* 27 04 65 |------------|------------|
* 49 49 97 |------------|------------|
* 二趟結果 13 04 49* 38 27 49 55 65 97 76
* d=1 13 04 49 38 27 49 55 65 97 76
* |----|----|----|----|----|----|----|----|----| 三趟結果
* 04 13 27 38 49 49 55 65 76 97*/
java 堆排序方式_幾種排序方式的java實現(02:希爾排序,歸並排序,堆排序)相关推荐
- java基数排序 数组_万字长文带你掌握Java数组与排序,代码实现原理都帮你搞明白!...
查找元素索引位置 基本查找 根据数组元素找出该元素第一次在数组中出现的索引 public class TestArray1 { public static void main(String[] arg ...
- java 数组包含_灵魂拷问:如何检查 Java 数组中是否包含某个值?
作者 | 沉默王二 责编 | Elle 在逛 programcreek 的时候,我发现了一些专注细节但价值连城的主题.比如说:如何检查Java数组中是否包含某个值 ?像这类灵魂拷问的主题,非常值得深入 ...
- ubuntu java classpath 设置_在Ubuntu中正确设置java classpath和java_home
我有错误 Exception in thread"main" java.lang.NoClassDefFoundError: 当我尝试在Ubuntu上运行编译类时.我使用的是一个非 ...
- java 工作业绩_个人年度工作总结报告java
<个人年度工作总结报告java.doc>由会员分享,可免费在线阅读全文,更多与<个人年度工作总结报告java>相关文档资源请在帮帮文库(www.woc88.com)数亿文档库存 ...
- Java并发插件_五分钟,轻松掌握Java并发编程!
Java作为最流行的编程语言之一,随着 Java 8的到来,越来越多的人开始学习,并深入研究!下面将介绍 Java并发编程,让开发者在最短的时间里掌握并发编程. 1. 并发 1.1. 什么是并发? 并 ...
- java spi 扩展_【扩展和解耦】JAVA原生SPI实现插件扩展
Java极客 | 作者 / 铿然一叶 这是Java极客的第 81 篇原创文章 相关阅读: 1. 什么是插件 通俗的讲插件有以下特征: 1.增加或者替换已有能力 2.不影响原有功能 3.对原有系 ...
- java设备发现_使用wifi发现移动设备 - java
我正在为网络论文做一些工作,但遇到了一个小问题.我必须做的第一步工作之一是让一台计算机作为AP工作(为此我正在使用hostapd),并使用它来检测房间中当前打开了wifi的所有设备(不需要与任何AP关 ...
- java读书心得_范文精选-读书心得体会-java夜未眠读书心得
1 java 夜未眠读书心得 通过参加这次的 java 夜未眠读书培训,这个对于系统的扩展是很有用处的. new 已经决定了你肯定要这个类, 而静态方法却可以修改, 不一定肯定返回你方 法所在的类,可 ...
- java核心面试_前100多个核心Java面试问题
java核心面试 Core Java interview questions help you in preparing for java based interviews. Whether you ...
最新文章
- Oracle数据库 查看表是否是 索引组织表的方法
- 用.NET解索尼相机ARW格式照片
- google i/o_Google I / O 2017最有希望的突破
- CVPR 2021 | 用于动作识别,即插即用、混合注意力机制的 ACTION 模块
- Java案例:通过循环打印一颗爱心
- 鸿蒙os开启第二批公测,鸿蒙OS开启第二批公测,7款机型加入升级名单,NOVA用户恭喜了...
- (47)LINUX应用编程和网络编程之二Linux文件属性
- 漫画:从打牌到 map-reduce 工作原理解析
- 跨域两种解决方案CORS以及JSONP
- 各自然带代表植被_十种常见自然带所对应的植被 十种常见自然带所对应的气候类型...
- Transaction-based classification and detection approach for Ethereum smart contract
- statsmodels.stats.proportion.proportions_ztest
- 父级fixed_相对于父元素的fixed定位的实现
- 超过2t硬盘分区_大于2T的磁盘怎么分区呢?
- jxr怎么变成jpg_【推文】夫君是未来大魔王怎么办?作死女配掉线了与你千般好...
- 云出阿里见月明(二)
- 基于近半年Twitter与Github趋势分析_12大分类500+ChatGPT最新开源GitHub存储库(涵盖ChatGPT开发全框架、全编程语言及教程)——每周更新
- VMware安装优麒麟20.04LTS
- Android_Vibrator(振动器)使用解析
- EMA(指数移动平均)及其深度学习应用
热门文章
- 计算机网络运输层的概述,计算机网络_运输层
- python3.5兼容2.7吗_Python版本2.7切3.5和3.5切2.7
- python列表生成式内必须定义匿名函数_Python基础-----基础概念总结
- python-docx 如何获取当前字号_餐饮老字号迈上“云端”
- 忘记mysql数据库名称_忘记MySQL数据库密码的解决办法
- php 放大镜,图片放大镜效果实战总结
- threadlocal存连接对象的目的_终于懂了ThreadLocal,不再害怕面试官问了
- 怎么在pptv里下载电视剧
- 七台河计算机网络工程专业,网络工程本科专业介绍
- java服务端无法发送给客户端,无法从客户端向服务器发送消息