摘要:
找一个gap,在arrays中,以gap为间隔,分小组,对每一组数据其进行插入排序 然后,减小gap,再依次进行插入排序 注意:其中控制大循环的增量i++,不是i += gap,因为如果是i+=gap的话,就是按照以gap为间隔只排0, gap, 2gap......,其他的1,1+gap,1+2g 阅读全文
摘要:
假设前边部分已经排序, 取出下一个元素,将其与前边的元素依次比较(找坑), 找到合适的位置(在已排序部分),插入进去, 然后继续进行下一次比较,直到结束。 4 2 1 6 3 6 0 -5 1 1 2 4 1 6 3 6 0 -5 1 1 1 2 4 6 3 6 0 -5 1 1 1 2 4 6 3 阅读全文
摘要:
选择排序 两次循环,大小循环,大循环来控制需要交换的位置, 小循环寻找未排序的序列中的最小值的位置,记录位置,然后与大循环记录的位置进行交换。 同样存在会多排序的次数 4 2 1 6 3 6 0 -5 1 1 -5 2 1 6 3 6 0 4 1 1 -5 0 1 6 3 6 2 4 1 1 -5 阅读全文
摘要:
从小到大排序 冒泡排序: 经过两次循环,在每次小循环的时候,比较左右两个数的大小(若左大右小,则交换顺序),依次比较,得到的是最大的那一个放在n-1处, 然后小循环的范围缩小一个,依次进行比较,找出第二大的,放在n-2处,就像冒泡一样,数字按照从大到小一个一个的冒上来。 所以,外面的大循环要控制小循 阅读全文