package com.atguigu.sort
import com.atguigu.sort.BubbleSore.bubbleSort
import scala.util.Random
/**
* @author wade
* @create 2019-04-07 22:45
*/
object SelectSort {
def main(args: Array[String]): Unit = {
/**
* 选择排序
* 默认从第一个元素是最小值
* 让他跟后面的比,如果又比它小的 把index记住
* 一轮循环完,我最小的index对应的值和第一个换
* 然后从第二个开始
*/
val arr = new Array[Int](800000)
val random = new Random()
for(i <- 0 until arr.length){
arr(i) = random.nextInt(800000)
}
println("=====排序开始=====")
val start: Long = System.currentTimeMillis()
selectSort(arr)
val end: Long = System.currentTimeMillis()
println("共耗时毫秒"+(end - start))
// val ints = Array(2,1,5,7,4,3,8)
// selectSort(ints)
// println(ints.mkString(" "))
}
def selectSort(arr: Array[Int]): Unit ={
for(i <- 0 until arr.length-1){
var minIndex = i
var minValue = arr(i)
for(j<- i+1 until arr.length){
if (arr(j) < minValue){
minIndex = j
minValue = arr(j)
}
}
arr(minIndex) = arr(i)
arr(i) = minValue
}
}
}