package sunfa.sort;
import java.util.Arrays;
import java.util.Random;
public class InsertionSort {
public static void main(String[] args) {
Random ran = new Random();
int[] a = new int[10];
for (int i = 0; i < a.length; i++) {
a[i] = ran.nextInt(100);
}
System.out.println(Arrays.toString(a));
insertionSort(a);
System.out.println(Arrays.toString(a));
Arrays.sort(a);
System.out.println(Arrays.toString(a));
}
/**
* 插入排序算法(insertion-sort)适合少量数据排序的算法
* @param a
*/
public static void insertionSort(int[] a) {
for (int i = 1; i < a.length; i++) {
int key = a[i];//保存刚才摸到的那张牌
for (int k = 0; k < i; k++) {//0-i 为左手拿着的牌的集合
if (a[i] < a[k]) {//将刚才抓到的那张牌依次和左手的牌进行比较,目的是为了找到它应该放的位置
for (int j = i - 1; j >= k; j--) {
a[j + 1] = a[j];//找到位置之后将该位置后面的牌的位置后移
}
a[k] = key;//插入牌到适合的位置
break;
}
}
}
}
}
分享到:
相关推荐
基于python的排序算法-插入排序Insertion Sort
JavaScript_資料結構與演算法_氣泡排序_Bubble_Sort、插入排序_Insertion_Sort_實作與分析_-
c代码-插入排序-- https://www.runoob.com/data-structures/insertion-sort.html http://c.biancheng.net/view/525.html
经典排序算法 - 插入排序Insertion sort 经典排序算法 - 基数排序Radix sort 经典排序算法 - 鸽巢排序Pigeonhole sort 经典排序算法 - 归并排序Merge sort 经典排序算法 - 冒泡排序Bubble sort 经典排序算法 - ...
插入排序算法,随机数列,可控制数列的上下界限,c++。
插入排序(Insertion Sort)源码和运行示例,配合博客使用更佳。
插入排序:InSertion_Sort 讲解详见http://blog.csdn.net/fly_yr/article/details/8544847 合并排序:MergeSort 讲解详见http://blog.csdn.net/fly_yr/article/details/8550097 快速排序:QuickSort 讲解详见...
binary sort,二分法查找,binary search, 二分法排序,merge sort 混合排序,shell sort 希尔排序,insertion sort 插入排序。数据结构 data structure
直接插入排序
C#,单向链表(Simply Linked List)的插入排序(Insertion Sort)算法与源代码 所谓插入排序法乃是将一个数目插入该占据的位置。 假设我们输入的是 “5,1,4,2,3” 我们从第二个数字开始,这个数字是1,我们的...
主要介绍了Java数据结构及算法实例:插入排序 Insertion Sort,本文直接给出实例代码,代码中包含详细注释,需要的朋友可以参考下
数据结构直接插入排序法(Straight Insertion Sort)
插入排序js javascript 中的插入排序示例。 仅用于教育目的。 如果您看到错误或错字,请向我发送拉取请求。
java排序原始代码插入gnome排序可视化和处理 在此文件中,有几个表示插入和Gnome排序算法的源代码,其中用于数据处理的主要代码使用C ++语言,而用于可视化的主要代码使用Java语言。
二进制插入排序(Binary Insertion Sort) 比特排序(Bitonic Sort) 乱序排序(Bogo Sort) 冒泡排序(Bubble Sort) 桶排序(Bucket Sort) 环形排序(Circle Sort) 鸡尾酒排序(Cocktail Shaker Sort) 梳排序...
C语言insertionsort,简答数组排序,插入排序。
matlab开发-InsertionSort。matlab中插入排序算法的实现
插入排序算法