package algorithms
// 冒泡排序
// 冒泡排序算法的运作如下:
// 比较相邻的元素。如果第一个比第二个大,就交换他们两个。
// 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。
// 针对所有的元素重复以上的步骤,除了最后一个。
// 持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
func BubbleSort(values []int) {
flag := true
for i := 0; i < len(values)-1; i++ {
flag = true
for j := 0; j < len(values)-i-1; j++ {
if values[j] > values[j+1] {
values[j], values[j+1] = values[j+1], values[j]
flag = false
} // end if
} // end for j
if flag == true {
break
}
} //end for i
}
已退回1积分