iOS编程——Swift实现 简单选择排序

冒泡排序是两两比较不断交换来实现排序,所以比较繁琐。

而选择排序  则是先选择要交换的那个数,才去交换。这样就可以省去很多不必要的步骤。


代码:

    func swap<T>(inout array: [T], index1: Int, index2: Int){
        var temp = array[index1]
        array[index1] = array[index2]
        array[index2] = temp
        println("swap!")
    }


    //简单选择排序
    func selectionSort(inout array: [Int]) {
        if array.count > 1 {
            var minValueIndex = 0
            
            for (var i = 0; i < array.count; i++) {
                minValueIndex = i
                
                for (var j = i + 1; j < array.count; j++) {
                    if array[i] > array[j] {
                        minValueIndex = j
                    }
                    
                    if minValueIndex != i {
                        swap(&array, index1: i, index2: minValueIndex)
                    }
                }
                
  
            }
        }
        
        println(array)
    }


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值