插入排序

本文通过视频教程介绍插入排序算法,并提供了相应的代码实现。从初始数组到排序完成,每一步都详细展示了数据交换的过程,帮助读者理解排序机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

网上有一个插入排序算法的视频 ( http://v.youku.com/v_show/id_XMjU4NTY5MzEy.html ),非常生动,于是就模拟该视频,写了下面的代码:

 

import java.util.Arrays;

public class InsertSort {
	public static void main(String[] args) {
		int[] datas = new int[] { 3, 0, 1, 8, 7, 2, 5, 4, 9, 6 };
		System.out.println("Before-->" + Arrays.toString(datas));
		for (int i = 0; i < datas.length - 1; i++) {
			if (datas[i] > datas[i + 1]) {
				transposition(datas, i, i + 1);
				for (int j = i; j > 1; j--) {
					if (datas[j] < datas[j - 1]) {
						transposition(datas, j, j - 1);
					}
				}
			}
		}
		System.out.println("After-->" + Arrays.toString(datas));
	}

	public static void transposition(int[] datas, int indexA, int indexB) {
		System.out.println("transposition " + datas[indexA] + " and " + datas[indexB]);
		int temp = datas[indexA];
		datas[indexA] = datas[indexB];
		datas[indexB] = temp;
	}
}
 
输出结果如下:
Before-->[3, 0, 1, 8, 7, 2, 5, 4, 9, 6]
transposition 3 and 0
transposition 3 and 1
transposition 8 and 7
transposition 8 and 2
transposition 2 and 7
transposition 2 and 3
transposition 8 and 5
transposition 5 and 7
transposition 8 and 4
transposition 4 and 7
transposition 4 and 5
transposition 9 and 6
transposition 6 and 8
transposition 6 and 7
After-->[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值