冒泡排序
----
冒泡排序是一种非常简单的初级排序算法,它每次比较相邻的两个元素,如果顺序错误就进行交换.由于最小的元素是经由不断交换慢慢浮到顶端的,所以叫做冒泡排序....冒泡排序对 n 个元素需要 O(n^2)次的比较次数,所以它对规模较大的数组进行排序是效率低下的.
运行过程
?
比较相邻的两个元素,如果第二个元素小于第一个元素,则进行交换(降序则相反)....数据移动是最少的 如果元素处于正确的位置上,则它不会被移动.选择排序每次交换一对元素,它们当中至少有一个将被移到其最终位置上,因此对n个元素的表进行排序总共进行至多n-1次交换.
运行过程
?...首先,找到数组中最小的那个元素
其次,将它和数组的第一个元素交换位置(如果第一个元素就是最小元素则它就和自己交换)
再次,在剩下的元素中找到最小的元素,将它与数组第二个元素交换位置.如此往复,直到整个数组有序...,交换不相邻的元素以对数组的局部进行排序,并最终用插入排序将局部有序的数组排序.