java实现插入排序
来源:互联网 发布:linq 获取不重复数据 编辑:程序博客网 时间:2024/06/06 00:36
有一个已经有序的数据序列,要求在这个已经排好的数据序列中插入一个数,但要求插入后此数据序列仍然有序,这个时候就要用到一种新的排序方法——插入排序法。插入排序的基本操作就是将一个数据插入到已经排好序的有序数据中,从而得到一个新的、个数加一的有序数据,算法适用于少量数据的排序,时间复杂度为O(n^2)。是稳定的排序方法。插入算法把要排序的数组分成两部分:第一部分包含了这个数组的所有元素,但将最后一个元素除外(让数组多一个空间才有插入的位置),而第二部分就只包含这一个元素(即待插入元素)。在第一部分排序完成后,再将这个最后元素插入到已排好序的第一部分中。
插入排序的基本思想是:每步将一个待排序的纪录,按其关键码值的大小插入前面已经排序的文件中适当位置上,直到全部插入完为止。
代码实现:
/** * 插入排序 * * @param arr * 待排序数组 */public void insertSort(int[] arr) {int i, j;int n = arr.length;int target;// 假定第一个元素被放到了正确的位置上,这样,仅需遍历1至 n-1。for (i = 1; i < n; i++) {j = i;target = arr[i];while (j > 0 && target < arr[j - 1]) {arr[j] = arr[j - 1];j--;}arr[j] = target;}}
阅读全文
0 0
- java实现插入排序
- java实现插入排序
- java实现插入排序
- 插入排序---java实现
- Java实现插入排序
- 插入排序 Java实现
- 插入排序(Java实现)
- java实现插入排序
- java实现插入排序
- Java实现插入排序
- 插入排序-Java实现
- Java 实现 插入排序
- java实现插入排序
- JAVA实现插入排序
- JAVA实现插入排序
- 插入排序 java实现
- java 实现插入排序
- java实现插入排序
- 第八届蓝桥杯国赛
- Codeforces 95C Volleyball 题解
- Affinity在细节上有哪些改进?上手度怎么样?
- 最小二乘法总结
- web api 接口
- java实现插入排序
- 避免 Hibernate 中用get/load方法获取的实体调用set方法后自动更新
- 仿微信或QQ下方的TabBar
- 嵌入式CNN检测网络--LCDet
- APK反编译
- 简单的fragment之间跳转
- 工具(二):数组常用操作工具类
- Java 类Scanner的学习
- 剑指offer 面试题39 二叉树的深度