直接选择排序

摘要: 首先找到数组中最小的元素,将其与第一个元素交换。随后在剩下的元素中找到最小的元素,与第二个元素交换。依次类推..选择排序的内循环只是比较当前元素与目前已知的最小元素,交换元素的动作写在内循环外,每次交换都能确定一个元素的最终位置。因此,交换的总次数为N,算法的时间效率取决于比较的次数。它有两个很鲜明的特点1,运行时间和输入无关为了找出最小的元素而扫描一遍数组并不能为下一遍扫描提供什么信息,使用选择排序的人可能会惊讶的发现一个已经有序的数组和一个随机排列的数组所用的排序时间竟然一样。2,数据移动是最少的每次交换都会改变两个数组元素的值,因此选择排序只用了N次交换。即交换次数和数组的大小是线性关系 阅读全文
posted @ 2011-10-11 16:55 snandy 阅读(800) 评论(0) 推荐(0)

冒泡排序(交换)

摘要: JavaScriptfunction bubbleSort(ary) { var i, j, temp, len = ary.length; for(i=1; i<len; i++) { for(j=len-1; j>=i; j--) { temp = ary[j]; if(temp < ary[j-1]) { ary[j] = ary[j-1]; ary[j-1] = temp; } } } return ary;}... 阅读全文
posted @ 2011-10-11 12:15 snandy 阅读(671) 评论(0) 推荐(1)