VB全排列算法.假设有9个数,123456789,打印所以的排列方式(即9阶乘种).用递归或更好的方法求解.例如:123
来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/10/02 16:29:44
VB全排列算法.
假设有9个数,123456789,打印所以的排列方式(即9阶乘种).用递归或更好的方法求解.
例如:
123456789
123456798
123456879
123456897
.
.
.
谢谢大家的热情回答,都不错,“collapsar147”和“ XOooZ”算法本质是一样的,只能选一个回答,那就给先回答者.
假设有9个数,123456789,打印所以的排列方式(即9阶乘种).用递归或更好的方法求解.
例如:
123456789
123456798
123456879
123456897
.
.
.
谢谢大家的热情回答,都不错,“collapsar147”和“ XOooZ”算法本质是一样的,只能选一个回答,那就给先回答者.
新建一个工程,在窗体上新建一个text1,一个command1,把以下代码复制到工程中运行试试Option ExplicitPrivate List() As StringPublic index&, tmp$Private Sub Command1_Click() ReDim List(Len(Trim(Form1.Text1.Text))) For index = 1 To Len(Trim(Form1.Text1.Text)) List(index) = Mid(Form1.Text1.Text, index, 1) Next index Perm List, 1, Len(Trim(Form1.Text1.Text))End SubPrivate Sub Form_Load() Form1.AutoRedraw = TrueEnd SubPublic Function Swap(ByRef Num1 As String, ByRef Num2 As String) '交换两个数 tmp = Num1 Num1 = Num2 Num2 = tmpEnd FunctionPublic Function Perm(ByRef ListTar() As String, ByVal k As Long, ByVal m As Long) '全排列函数 Dim i& If k > m Then For i = 1 To m Print ListTar(i); Next i Print Else For i = k To m Swap ListTar(k), ListTar(i) Perm ListTar, k + 1, m Swap ListTar(k), ListTar(i) Next i End IfEnd Function运行效果
matlab 全排列perm只能求1~9的,用递归求全排列
VB语句问题,用递归的方法,求任意数的阶乘.
求阶乘n!的递归算法
全排列、算法、C语言、递归、求帮忙
在9个数里取3个不同的数排列,一共有多少种方法
用排列或组合的方法
四个数排列,其中有3个数不相同,另外一个数是重复的,共有多少种排列方法?
VB编程:用递归方法求n阶勒让德多项式的值,递归公式为:
VB排列 数字的那个,打印PRINT的那个,循环的那个~
利用递归的方法求自然数n的阶乘
非递归的全排列,列入 abc C写 abc acb bac bca cab cba
数据结构算法写一非递归算法,该算法在按值严格递增排列的顺序表A[1,n] 采用折半查找方法查找值不大于item 的最大元