遍历排列的实现——VB2005
代码赋予其后,用的是VB2005
两个类,一个是clsPermutation,用来计算排列的;一个是clsCombination,用来计算组合的。下面,把各个函数说明一下。
类clsPermutation:
函数:GetPermutation
获得指定标号的排列,返回值是一个数组
参数: Lower,排列中的下限
Upper,排列中的上限
Count,排列中的元素的个数
Index,该排列的标号
示例: tI=GetPermutation(1,8,4,23)
返回一个从1到8中选4个数的一个排列,标号为23
函数:GetPermutationRandom
获得随机的排列,返回值是一个数组
参数: Lower,排列中的下限
Upper,排列中的上限
Count,排列中的元素的个数
示例: tI=GetPermutation(1,8,4)
返回一个从1到8中选4个数的一个排列
函数:Factorial
获得指定参数的阶乘,返回值是一个整数
参数: N,指定参数
示例: tI=Fratorial(4)
返回4的阶乘,为24
函数:P
获得指定参数的排列数,返回值是一个整数
参数: M,指定参数上标;N,指定参数下标
示例: tI=P(2,6)
计算P(2,6)的值,为30
类clsCombination:
函数:GetCombination
获得指定标号的排列,返回值是一个数组
参数: Lower,排列中的下限
Upper,排列中的上限
Count,排列中的元素的个数
Index,该排列的标号
示例: tI=GetCombination(1,8,4,23)
返回一个从1到8中选4个数的一个组合,标号为23
函数:GetCombinationRandom
获得随机的排列,返回值是一个数组
参数: Lower,排列中的下限
Upper,排列中的上限
Count,排列中的元素的个数
示例: tI=GetCombination(1,8,4)
返回一个从1到8中选4个数的一个组合
函数:C
获得指定参数的排列数,返回值是一个整数
参数: M,指定参数上标;N,指定参数下标
示例: tI=C(2,6)
计算C(2,6)的值,为15
1 Public Class clsPermutation
2 Private Shared mList() As Integer
3
4 Public Shared Function GetPermutationRandom(ByVal Lower As Integer, _
5 If Count > Upper - Lower + 1 Then Return Nothing
6 If Count <= 0 Then Return Nothing