冒泡排序是一种简单的排序算法,它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。遍历数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。 以下是一个在Swift中实现冒泡排序的例子: ```swift func bubbleSort(_ array: inout [Int]) { let n = array.count guard n > 1 else { return } for i in 0..<n-1 { var swapped = false for j in 0..<n-i-1 { if array[j] > array[j+1] { array.swapAt(j, j+1) swapped = true } } if !swapped { break } } } var numbers = [64, 34, 25, 12, 22, 11, 90] bubbleSort(&numbers) print(numbers) // 输出: [11, 12, 22, 25, 34, 64, 90] ``` 在这个例子中,我们首先对数组进行遍历,然后在每次遍历中,我们再遍历数组的未排序部分,并交换相邻元素如果它们的顺序错误。我们使用 `swapped` 变量来检查在一次遍历中是否进行了任何交换。如果没有进行任何交换,那么说明数组已经排序完成,我们可以提前结束算法。 [2023-11-09 17:45:24 | AI问答 | 349点数解答]