Функция _ArrayPermute

         Описание функции


_ArrayPermute

Возвращает массив перестановок всех элементов указанного массива

#include <Array.au3>
_ArrayPermute(ByRef $avArray [, $sDelim = ""])

Параметры

$avArray Массив для использования
$sDelim [необязательный] Символ разделитель, по умолчанию "" (пустая строка) без разделителя

Возвращаемое значение

Успех:Возвращает массив с перестановками
$array[0] содержит количество возвращаемых строк.
Остальные элементы ($array[1], $array[2] ... $array[n]) содержат перестановки.
Ошибка:Возвращает 0 устанавливает @error:
@error:1 - Массив $avArray не является массивом
2 - Массив $avArray не является одномерным массивом

Примечания

Используемый массив должен иметь начальный индекс с нуля, т.е. не содержать счётчик размерности в первом элементе $array[0]. Основано на алгоритме Alexander Bogomolny.

http://www.bearcave.com/random_hacks/permute.html

См. также

_ArrayCombinations

Пример

; *****************************************************************************
; Пример 1 - Объявляем одномерный массив, возвращая массив с перестановками
; *****************************************************************************
#include <Array.au3>

Dim $aArray[4] = [1, 2, 3, 4]
$aNewArray = _ArrayPermute($aArray, ",") ; Используются параметры по умолчанию
_ArrayDisplay($aNewArray, "Массив с перестановками")