摘要: 快速排序是冒泡排序的改进版,也是最好的一种内排序,在很多面试题中都会出现,也是作为程序员必须掌握的一种排序方法。 思想:1.在待排序的元素任取一个元素作为基准(通常选第一个元素,但最的选择方法是从待排序元素中随机选取一个作为基准),称为基准元素; 2.将待排序的元素进行分区,比基准元素大的元素放在它 阅读全文
posted @ 2015-07-27 22:32 MOBIN 阅读(118852) 评论(11) 推荐(110) 编辑
摘要: 排序思路:通过折半查找的方式找到合适的插入位置再插入。算法实现:public class BiInsertSort { public static void biInsertSort(int arr[]){ for(int i = 1; i = right+1; j --){ ... 阅读全文
posted @ 2015-07-27 16:41 MOBIN 阅读(1141) 评论(0) 推荐(0) 编辑
摘要: 排序思路:每次将一个待排序的元素与已排序的元素进行逐一比较,直到找到合适的位置按大小插入。 第一趟比较示图: 算法实现: 结果: 算法分析:1.当元素的初始序列为正序时,仅外循环要进行n-1趟排序且每一趟只进行一次比较,没有进入if语句不存在元素之间的交换(移动)。此时比较次数(Cmin)和移动次数 阅读全文
posted @ 2015-07-27 13:14 MOBIN 阅读(29088) 评论(2) 推荐(8) 编辑