我在Scala中编写了这个插入类:
def insertionSort(array:Array[Double]):Unit ={
for(i <- 1 until array.length){
var current = i - 1
var currentTemp = array(i)
do{
array(current + 1) = array(current)
current -= 1
}while((current >= 0 && currentTemp < array(current)))
array(current + 1) = currentTemp
}
}
我注意到当我运行该函数时,除了最后一个数字之外,我还找回了一个排序列表。这是输出:
Unsorted Array: 0.447256485852796,0.5849012754409237,0.4132227916845631,0.5850539272085894,0.38731662469810446
Insertion Sorted Array: 0.38731662469810446,0.4132227916845631,0.5849012754409237,0.5850539272085894,0.447256485852796
我不确定我能改变什么,所以最后一个数字处于正确的位置。任何帮助都会很棒。