你的位置:首页 > 操作系统

[操作系统]ios swift冒泡排序


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