162 / 205
Abramyan · ArrayQiyin15 ball· ~12 daqiqa

Selection Sort

N ta elementli arr massivi berilgan. Selection sort (tanlab saralash) algoritmi yordamida uni kamayish tartibida saralab, natijani qaytaring.

example.go
func selectionSort(N int, arr []int) []int {
    // ...
}

Misollar

kod
Input: N=5, arr=[5,2,8,1,9]
Output: [9, 8, 5, 2, 1]
kod
Input: N=4, arr=[10,5,15,8]
Output: [15, 10, 8, 5]
kod
Input: N=6, arr=[3,7,2,9,1,8]
Output: [9, 8, 7, 3, 2, 1]

Maslahatlar

  1. Har qadamda qolgan qismdan eng kattasini toping (kamayish tartibi).
  2. Uni joriy o'ringa almashtiring: a[i], a[maxIdx] = a[maxIdx], a[i].