算法笔记

排序算法1

1、梳排序

梳排序是在冒泡排序的基础上改进的,原理:将待排序数组的长度/1.3的近似值作为比较距离进行比较和交换,直到距离小于3,之后每次减一进行比较和交换。

例:数组[9,5,6,7,3,4,5,9,8,15]

(1)数组长度为10,第一次的比较距离为10/1.3 = 8

比较的数据有9和8,5和15

比较交换后的结果为

[8,5,6,7,3,4,5,9,9,15]

(2)第二次的比较距离为8/1.3 = 6

比较的数据有8和5,5和9,6和9,7和15

比较交换后的结果为

[5,5,6,7,3,4,8,9,9,15]

(3)第三次的比较距离为6/1.3 = 4

比较的数据有5和3,5和4,6和8,7和9,3和9

比较交换后的结果为

[3,4,6,7,5,5,8,9,9,15]

(4)第四次的比较距离为3

结果为

[3,4,5,7,5,6,8,9,9,15]

(5)第五次的比较距离为2

结果为

[3,4,5,6,5,7,8,9,9,15]

(6)第六次的比较距离为1

结果为

[3,4,5,5,6,7,8,9,9,15]

参考:http://www.cnblogs.com/kkun/archive/2011/11/23/2260293.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值