ios swift(1)冒泡排序

时间:2024-10-12 18:37:07

//冒泡排序  稳定性最高  时间复杂度高 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