How to sort an array in descending order using selection sort with Kotlin

1 Answer

0 votes
fun selectionSortDescending(arr: Array<Int>) {
    val n = arr.size
    
    for (i in 0 until n - 1) {
        var maxIdx = i
        for (j in i + 1 until n) {
            if (arr[j] > arr[maxIdx]) {
                maxIdx = j
            }
        }
        // Swap the found maximum element with the i (the new first) element
        val temp = arr[maxIdx]
        arr[maxIdx] = arr[i]
        arr[i] = temp
    }
}

fun main() {
    val array = arrayOf(2, 141, 3, 4, 21, 13, 30, 50)

    selectionSortDescending(array)
    
    println(array.joinToString(", "))
}
 
 
    
/*
run:
 
141, 50, 30, 21, 13, 4, 3, 2
  
*/

 



answered Feb 26, 2025 by avibootz
edited Feb 26, 2025 by avibootz

Related questions

...