_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.См. также
_ArrayCombinationsПример

; *****************************************************************************
; Пример 1 - Объявляем одномерный массив, возвращая массив с перестановками
; *****************************************************************************
#include <Array.au3>
Dim $aArray[4] = [1, 2, 3, 4]
$aNewArray = _ArrayPermute($aArray, ",") ; Используются параметры по умолчанию
_ArrayDisplay($aNewArray, "Массив с перестановками")