Следующий код - это ручная версия алгоритма сортировки массива, который берет любой массив целых чисел и изменяет этот массив так, чтобы он находился в неубывающем порядке. По какой-то причине, моя консоль scala просто сидит (вроде бы на вычислительных объектах), когда я вызываю эту процедуру для массива, и я не знаю почему.
def main(a: Array[Int]) {
var l = a.length
var switchesLeft = true
while( switchesLeft == true) {
var z = 0
var i = 0;
while( i < l ) {
var x = i + 1
if( x == l ) x = 0
if( a(i) > a(x) ) {
// Switch the elements
var t = a(x)
a(x) = a(i)
a(i) = t
z += 1;
}
i += 1
}
if( z == 0) {
// No switches were done
switchesLeft = false
}
}
}