/**
* 重复地走访过要排序的元素列,依次比较两个相邻的元素,
* 如果他们的顺序(如从大到小、首字母从A到Z)错误就把他们交换过来。
* 走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。
*/
object Bubble extends App {
var list: Array[Int] = Array(2, 45, 1, 4, 8, 2, 5, 8, 35, 67, 3, 9, 3, 8, 4, 7, 34);
for (i <- 0 until list.length) {
for (j <- 0 until list.length - i - 1) { //每进行一个内循环, list.length-i-1到list.length就已经排好序了
if (list(j) > list(j + 1)) {
var tmp = list(j)
list(j) = list(j + 1)
list(j + 1) = tmp
}
}
}
list.foreach(println)
}