使用快速排序法/插入排序法对一个一维或者二维数组进行排序.
#Include <Array.au3>
_ArraySort(ByRef $avArray[, $iDescending = 0 [, $iStart = 0 [, $iEnd = 0 [, $iSubItem = 0]]]])
$avArray | 要排序的数组 |
$iDescending | [可选参数] 如果设置为 1, 递减排列 |
$iStart | [可选参数] 开始排序的数组索引 |
$iEnd | [可选参数] 停止排序的数值索引 |
$iSubItem | [可选参数] 储存于二维数组中的子索引 |
成功: | 返回 1 |
失败: | 返回 0, 并设置 @error: |
@error: | 1 - $avArray 不是一个数组 |
2 - $iStart 大于 $iEnd | |
3 - $iSubItem 大于子项目数 | |
4 - $avArray 有太多的维度 |
#include <Array.au3>
;===============================================================================
; 示例 1 (使用一维数组)
;===============================================================================
Local $avArray[10] = [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
_ArrayDisplay($avArray, "默认排序方式" )
_ArraySort($avArray)
_ArrayDisplay($avArray, "升序排列方式" )
_ArraySort($avArray, 1)
_ArrayDisplay($avArray, "降序排列方式" )
_ArraySort($avArray, 0, 3, 6)
_ArrayDisplay($avArray, "插值排序方式 3 to 6" )
;===============================================================================
; 示例 2 (使用二维数组)
;===============================================================================
Local $avArray[5][3] = [ _
[5, 20, 8], _
[4, 32, 7], _
[3, 16, 9], _
[2, 35, 0], _
[1, 19, 6]]
_ArrayDisplay($avArray, "默认排序方式" )
_ArraySort($avArray, 0, 0, 0, 0)
_ArrayDisplay($avArray, "副索引0升序排列方式" )
_ArraySort($avArray, 0, 0, 0, 1)
_ArrayDisplay($avArray, "副索引1升序排列方式" )
_ArraySort($avArray, 0, 0, 0, 2)
_ArrayDisplay($avArray, "副索引2升序排列方式" )