java - 插入排序

本文详细介绍了插入排序的基本原理和实现过程,通过示例演示了如何利用插入排序算法对数组进行排序,并给出了具体的Java代码实现。

一.原理和思想

有一个已经有序的数据序列,要求在这个已经排好的数据序列中插入一个数,但要求插入后此数据序列仍然有序。

插入排序的基本思想是:每步将一个待排序的纪录,按其关键码值的大小插入前面已经排序的文件中适当位置上,直到全部插入完为止。

二.示例

三.代码

 1 public class Insertion {
 2     public void insertSort(int[] array){
 3         int temp = 0;
 4         for(int i=1;i<array.length;i++){
 5             //从前两个数开始比较,每趟比较次数逐渐增加
 6             for(int j=i;j>0;j--){
 7                 if(array[j]<array[j-1]){
 8                     temp = array[j];
 9                     array[j] = array[j-1];
10                     array[j-1] = temp;
11                 }else{
12                     break;
13                 }
14             }
15         }
16     }
17     public static void main(String[] args) {
18         Insertion insertion = new Insertion();
19         int[] array = {6,5,4,7,8,9,2,3,4,7};
20         insertion.insertSort(array);
21         for(int i:array){
22             System.out.println(i);
23         }
24     }
25 }

 

转载于:https://my.oschina.net/langgege/blog/1087718

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值