基于 David Musser 的 introsort
,实现 SORT
算法的通用子程序接口。(规范)
bitset_64_sort( array[, reverse] )
使用基于 David Musser 的 introsort
的混合排序算法对类型为 type(bitset_64)
的输入 ARRAY
进行排序。该算法对所有输入均为 O(N Ln(N)) 阶。由于它依赖于 quicksort
,因此与其他排序算法相比,对于随机数据的 O(N Ln(N)) 行为的系数很小。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
type(bitset_64), | intent(inout) | :: | array(0:) | |||
logical, | intent(in), | optional | :: | reverse |
bitset_large_sort( array[, reverse] )
使用基于 David Musser 的 introsort
的混合排序算法对类型为 type(bitset_large)
的输入 ARRAY
进行排序。该算法对所有输入均为 O(N Ln(N)) 阶。由于它依赖于 quicksort
,因此与其他排序算法相比,对于随机数据的 O(N Ln(N)) 行为的系数很小。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
type(bitset_large), | intent(inout) | :: | array(0:) | |||
logical, | intent(in), | optional | :: | reverse |
char_sort( array[, reverse] )
使用基于 David Musser 的 introsort
的混合排序算法对类型为 character(len=*)
的输入 ARRAY
进行排序。该算法对所有输入均为 O(N Ln(N)) 阶。由于它依赖于 quicksort
,因此与其他排序算法相比,对于随机数据的 O(N Ln(N)) 行为的系数很小。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
character(len=*), | intent(inout) | :: | array(0:) | |||
logical, | intent(in), | optional | :: | reverse |
dp_sort( array[, reverse] )
使用基于 David Musser 的 introsort
的混合排序算法对类型为 real(dp)
的输入 ARRAY
进行排序。该算法对所有输入均为 O(N Ln(N)) 阶。由于它依赖于 quicksort
,因此与其他排序算法相比,对于随机数据的 O(N Ln(N)) 行为的系数很小。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
real(kind=dp), | intent(inout) | :: | array(0:) | |||
logical, | intent(in), | optional | :: | reverse |
int16_sort( array[, reverse] )
使用基于 David Musser 的 introsort
的混合排序算法对类型为 integer(int16)
的输入 ARRAY
进行排序。该算法对所有输入均为 O(N Ln(N)) 阶。由于它依赖于 quicksort
,因此与其他排序算法相比,对于随机数据的 O(N Ln(N)) 行为的系数很小。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
integer(kind=int16), | intent(inout) | :: | array(0:) | |||
logical, | intent(in), | optional | :: | reverse |
int32_sort( array[, reverse] )
使用基于 David Musser 的 introsort
的混合排序算法对类型为 integer(int32)
的输入 ARRAY
进行排序。该算法对所有输入均为 O(N Ln(N)) 阶。由于它依赖于 quicksort
,因此与其他排序算法相比,对于随机数据的 O(N Ln(N)) 行为的系数很小。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
integer(kind=int32), | intent(inout) | :: | array(0:) | |||
logical, | intent(in), | optional | :: | reverse |
int64_sort( array[, reverse] )
使用基于 David Musser 的 introsort
的混合排序算法对类型为 integer(int64)
的输入 ARRAY
进行排序。该算法对所有输入均为 O(N Ln(N)) 阶。由于它依赖于 quicksort
,因此与其他排序算法相比,对于随机数据的 O(N Ln(N)) 行为的系数很小。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
integer(kind=int64), | intent(inout) | :: | array(0:) | |||
logical, | intent(in), | optional | :: | reverse |
int8_sort( array[, reverse] )
使用基于 David Musser 的 introsort
的混合排序算法对类型为 integer(int8)
的输入 ARRAY
进行排序。该算法对所有输入均为 O(N Ln(N)) 阶。由于它依赖于 quicksort
,因此与其他排序算法相比,对于随机数据的 O(N Ln(N)) 行为的系数很小。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
integer(kind=int8), | intent(inout) | :: | array(0:) | |||
logical, | intent(in), | optional | :: | reverse |
sp_sort( array[, reverse] )
使用基于 David Musser 的 introsort
的混合排序算法对类型为 real(sp)
的输入 ARRAY
进行排序。该算法对所有输入均为 O(N Ln(N)) 阶。由于它依赖于 quicksort
,因此与其他排序算法相比,对于随机数据的 O(N Ln(N)) 行为的系数很小。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
real(kind=sp), | intent(inout) | :: | array(0:) | |||
logical, | intent(in), | optional | :: | reverse |
string_type_sort( array[, reverse] )
使用基于 David Musser 的 introsort
的混合排序算法对类型为 type(string_type)
的输入 ARRAY
进行排序。该算法对所有输入均为 O(N Ln(N)) 阶。由于它依赖于 quicksort
,因此与其他排序算法相比,对于随机数据的 O(N Ln(N)) 行为的系数很小。
类型 | 意图 | 可选 | 属性 | 名称 | ||
---|---|---|---|---|---|---|
type(string_type), | intent(inout) | :: | array(0:) | |||
logical, | intent(in), | optional | :: | reverse |