Поделиться через


Функция Array.sortInPlaceBy<'T,'Key> (F#)

Сортирует элементы массива посредством изменения массива на месте, используя заданную проекцию для ключей.Для сравнения элементов используется оператор Operators.compare.

Пространство имен/путь к модулю: Microsoft.FSharp.Collections.Array

Сборка: FSharp.Core (в FSharp.Core.dll)

// Signature:
Array.sortInPlaceBy : ('T -> 'Key) -> 'T [] -> unit (requires comparison)

// Usage:
Array.sortInPlaceBy projection array

Параметры

  • projection
    Тип: 'T -> 'Key

    Функция для преобразования элементов массива в сравниваемый тип.

  • array
    Тип: 'T[]

    Входной массив.

Заметки

Это не стабильная сортировка, то есть исходный порядок равных элементов может не сохраниться.Для обеспечения стабильных результатов сортировки можно использовать Seq.sort.

В скомпилированных сборках имя этой функции — SortInPlaceBy.При обращении к функции из языка, отличного от F#, или посредством отражения следует использовать это имя.

Пример

В следующем примере кода демонстрируется использование функции Array.sortInPlaceBy.

let array1 = [|1; 4; 8; -2; 5|]
Array.sortInPlaceBy (fun elem -> abs elem) array1
printfn "%A" array1

Output

  

Платформы

Windows 8, Windows 7, Windows Server 2012, Windows 2008 Server R2

Сведения о версии

Основной версии библиотеки F#

Поддерживается в: 2.0, 4.0, портативное

См. также

Ссылки

Модуль Collections.Array (F#)

Пространство имен Microsoft.FSharp.Collections (F#)