IOS算法-冒泡排序
//冒泡排序 稳定性最高 时间复杂度高 O(n(2)) ,交换次数太多, 一次交换等于三次赋值 最简单
var count = 0
func sortInts(inout data : [Int]) {
for var i = 0; i < data.count - 1; i++ {
var flag = true
for var j = 0; j < data.count - 1 - i; j++ {
if data[j] > data[j + 1] {
swap(&data[j], &data[j + 1])
flag = false
}
}
count++
print(count)
if flag {
return
}
}
}
var a = [1, 3, 2, 4, 8, 5, 6, 9, 7]
sortInts(&a)
a
count