2016年9月24日

堆排序算法

摘要: 一、堆排序算法的基本特性时间复杂度:O(n*lgn)最坏:O(n*lgn)空间复杂度:O(1)不稳定。 堆排序是一种选择排序算法,与关键字的初始排列次序无关,即就是在最好,最坏,一般的情况下排序时间复杂度不变。对包含n个数的输入数组,平均时间为O(nlgn),最坏情况(已经排好序)也是是O(nlgn 阅读全文

posted @ 2016-09-24 14:50 毛先森 阅读(8159) 评论(0) 推荐(1) 编辑

快速排序算法2---以第一个元素作为主元

摘要: 前面写过一个关于快速排序的算法,那个写得很仔细了,对于理解快排的思想是足够,也很好的。但近期在做笔试的题目碰到的关于快速的排序的题目,发现一般题目都是指定数组的第一个元素做主元,而我却比较擅长把最后一个元素作为主元,搞得很尴尬。其实要想达到快排最好的时间复杂度,除了待排序的数组是无序外,主元的选择也 阅读全文

posted @ 2016-09-24 12:15 毛先森 阅读(2059) 评论(0) 推荐(0) 编辑

导航