输入:
let arrayInt = [7,8,3,4,5,9,1,2,6]
输出
let newArray = [1,2,3,4,5,6,7,8,9]
如何在不使用.sort
Swift 中可用的方法的情况下做到这一点?我刚刚在编程测试中失败了,所以我想知道答案:(
嘿,看看这可能对你有帮助,有超过 1 种可能性: https ://www.cs.cmu.edu/~adamchik/15-121/lectures/Sorting%20Algorithms/sorting.html
有一个例子: https ://gist.github.com/tmdvs/d8edeb9bf26f2f5c3e50
编辑:这里有一个例子:
var unsortedArray = [7,8,3,4,5,9,1,2,6]
for i in stride(from: unsortedArray.count-1, to: 0, by: -1) {
for j in 1...i {
if unsortedArray[j-1] > unsortedArray[j] {
let tmp = unsortedArray[j-1]
unsortedArray[j-1] = unsortedArray[j]
unsortedArray[j] = tmp
}
}
}
之后对 unsortedArray 进行排序。冒泡排序