Функция sort.Float64s
Функция sort.Float64s из пакета sort сортирует срез значений типа float64 в порядке возрастания. Она изменяет переданный срез на месте, поэтому дополнительной памяти не требуется. В единственный параметр функция принимает срез чисел с плавающей точкой, который будет отсортирован.
Синтаксис
sort.Float64s(slice []float64)
Пример
Отсортируем срез чисел с плавающей точкой по возрастанию:
package main
import (
"fmt"
"sort"
)
func main() {
numbers := []float64{3.5, 1.2, 4.8, 2.1, 0.9}
sort.Float64s(numbers)
fmt.Println(numbers)
}
Результат выполнения кода:
[0.9 1.2 2.1 3.5 4.8]
Пример
Проверим работу функции на срезе с отрицательными и нулевыми значениями:
package main
import (
"fmt"
"sort"
)
func main() {
numbers := []float64{-2.5, 0.0, 1.5, -1.0, 3.0}
sort.Float64s(numbers)
fmt.Println(numbers)
}
Результат выполнения кода:
[-2.5 -1 0 1.5 3]
Пример
Функция sort.Float64s изменяет исходный срез, поэтому создадим копию, если нужно сохранить оригинальный порядок:
package main
import (
"fmt"
"sort"
)
func main() {
original := []float64{7.1, 2.3, 5.6, 1.8}
sorted := make([]float64, len(original))
copy(sorted, original)
sort.Float64s(sorted)
fmt.Println("Original:", original)
fmt.Println("Sorted: ", sorted)
}
Результат выполнения кода:
"Original: [7.1 2.3 5.6 1.8]"
"Sorted: [1.8 2.3 5.6 7.1]"
Смотрите также
-
функцию
sort.Float64sAreSorted,
которая проверяет, отсортирован ли срез чисел с плавающей точкой -
функцию
sort.Ints,
которая сортирует срез целых чисел -
функцию
sort.Strings,
которая сортирует срез строк -
функцию
sort.Reverse,
которая позволяет отсортировать срез в обратном порядке