排序之选择排序实现swift

//
//  main.swift
// 
//
//  Created by LongMa on 2020/7/4.
//  Copyright © 2020 . All rights reserved.
//

import Foundation

print("Hello,World!")

func kp(arr : [Int]) ->  Array<Int>{
    var a = arr
    let len = arr.count
    
    var indexOfMinNum,temp : Int
    for i in 0..<(len - 1) {//eg:3个数,应循环2次
        indexOfMinNum = i
        
        //无序部分,查找最小值,记录下标。
        for j in (i+1)..<(len){//eg:3个数,最大小标为2。
            if a[j] < a[indexOfMinNum] {
                indexOfMinNum = j
            }
        }
        
        //交换无序部分0位值和最小值
        if i != indexOfMinNum {
            temp = a[i]
            a[i] = a[indexOfMinNum]
            a[indexOfMinNum] = temp
        }
    }
    return a
}

let lArr = [22,6,4,5,10,11,2,1,0]
let lA = kp(arr: lArr)
print(lA)

let lArr1 = [23,8,9,3,1]
let lA1 = kp(arr: lArr1)
print(lA1)

log:

Hello,World!
[0,22]
[0,23]
Program ended with exit code: 0

相关文章

当我们远离最新的 iOS 16 更新版本时,我们听到了困扰 Apple...
欧版/美版 特别说一下,美版选错了 可能会永久丧失4G,不过只...
一般在接外包的时候, 通常第三方需要安装你的app进行测...
前言为了让更多的人永远记住12月13日,各大厂都在这一天将应...