摘要:
一、基本概念首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后,再从剩余未排序元素中继续寻找最小(大)元素,然后放到已排序序列的末尾。以此类推,直到所有元素均排序完毕。二、算法特点是否稳定: false平均时间复杂度:O(n^2)最差时间复杂度:O(n^2)最优时间复杂度:O(n^2)三、相关代码public static void main(String[] args) { int[] a = { 2, 5, 5, 3, 9, 6, 1, 4, 8, 7 }; select_sort(a); print_array(a);} ... 阅读全文
posted @ 2012-10-17 22:26
一瓶珍情
阅读(4225)
评论(0)
推荐(0)
摘要:
快速排序 一、基本概念 首先任意选取一个数据(通常选用第一个数据)作为关键数据,然后将所有比它小的数都放到它前面,所有比它大的数都放到它后面,这样就将序列分为两个子序列。这个过程称为一趟快速排序。 详细步骤: 设两个变量i,j。i指向最左边,j指向最右边 选数组第一个元素为基准点pivot,即piv 阅读全文
posted @ 2012-10-17 21:56
一瓶珍情
阅读(230)
评论(0)
推荐(0)
摘要:
冒泡排序 一、基本概念 重复地走访过要排序的数列,依次比较相邻的两个数,将小数放在前面,大数放在后面,直到所有的数都是有序为止。 每一趟比较都是有收益的,能够得到当前趟的最大数。 二、算法特点 是否稳定:true 平均时间复杂度: O(n^2) 最差时间复杂度: O(n^2) 最优时间复杂度: O( 阅读全文
posted @ 2012-10-17 17:58
一瓶珍情
阅读(415)
评论(0)
推荐(0)

浙公网安备 33010602011771号