作为一个程序员,你怎么能不了解冒泡算法呢?
下面向大家介绍六中排序算法,并提供javascript实现,以及简单分析算法复杂度。
1. 简单排序方法
1.1 冒泡排序
总体描述:
相邻元素进行比较,每次选取最大的元素,进行下一次比较,因此可以将最大的元素像冒泡一样,从某一位置,到达最顶端
算法简单描述:
假设:共有n个元素
进行(n-1)次循环,第i(从1开始计数)次循环获得第i大的元素,放在数组第(n-i)(数组从0开始计数)位
每次循环都从第一个元素开始,比较当前元素与其后一个元素的大小关系,如果后一个元素小于当前元素,则说明,当前元素较大,互换位置,即将(0~n-i区间最大的数放在n-i位),并将当前元素指向下一个位置,直到当前位置指向0,循环结束
完整代码:
function bubbleSort(originArr)