Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
楼主: ldy

[分享] 趣味思考题 黑白排列 不仅是排列组合的数量

[复制链接]
发表于 2007-11-4 23:36 | 显示全部楼层

递归好难理解哦,这位大师能不能解释一下代码,谢谢
回复

使用道具 举报

发表于 2007-11-5 07:50 | 显示全部楼层

Sub xi(a, x, y, z, jj, arr)
If z > y Then Exit Sub    '剪枝
If Len(a) - z > x Then Exit Sub    '剪枝
If Len(a) = x + y Then   '结果输出
   jj = jj + 1
   arr(jj, 1) = a
End If
Call xi(a & "o", x, y, z, jj, arr)    '二进制组合
Call xi(a & "1", x, y, z + 1, jj, arr)
End Sub
回复

使用道具 举报

发表于 2007-11-5 08:49 | 显示全部楼层

QUOTE:
以下是引用hhzjxss在2007-11-5 8:13:27的发言:
QUOTE:
以下是引用彭希仁在2007-11-4 23:29:22的发言:

此题其实也就是一个二进制的算法,递归写起来是简单,但速度一定不会快,而且所有的递归都可以转换为非递归的写法.

 

 

彭希仁啥时给我们来讲一下递归吧,这个东东早听人说了,就是不知道是什么算法!

讲课qee用版主最在行了

http://club.excelhome.net/dispbbs.asp?BoardID=2&ID=216030&replyID=&skin=0

 

回复

使用道具 举报

发表于 2007-11-5 08:51 | 显示全部楼层

QUOTE:
以下是引用彭希仁在2007-11-5 8:49:18的发言:
QUOTE:
 

讲课qee用版主最在行了

那个帖子好象是你发的呀,何不在EP上转发一下呢?

 

最好多举一些小而易懂的实例!

[此贴子已经被作者于2007-11-5 8:51:43编辑过]
回复

使用道具 举报

发表于 2007-11-4 21:23 | 显示全部楼层

学习一下,天堂鼠老师什么时候讲一下递归吧
回复

使用道具 举报

发表于 2007-11-4 23:21 | 显示全部楼层

Sub peng()
ReDim arr(1 To 65536, 1 To 1)
Call xi("", 3, 2, 0, jj, arr)
Range(Cells(1, 1), Cells(jj, 1)) = arr
End Sub
Sub xi(a, x, y, z, jj, arr)
If z > y Then Exit Sub
If Len(a) - z > x Then Exit Sub
If Len(a) = x + y Then
jj = jj + 1
arr(jj, 1) = a
End If
Call xi(a & "o", x, y, z, jj, arr)
Call xi(a & "1", x, y, z + 1, jj, arr)
End Sub

应ldy888要求随便写了一个,供大家参考

其中x可以与以0的个数,y为1的个数,jj

Sub xi(a, x, y, z, jj, arr)

Sub xi("", x, y, 0, 0, arr)

[此贴子已经被作者于2007-11-5 8:30:19编辑过]
回复

使用道具 举报

发表于 2007-11-4 23:29 | 显示全部楼层

此题其实也就是一个二进制的算法,递归写起来是简单,但速度一定不会快,而且所有的递归都可以转换为非递归的写法.

回复

使用道具 举报

发表于 2007-11-5 09:44 | 显示全部楼层

彭大师太高了!学习!!!
回复

使用道具 举报

发表于 2007-11-5 17:26 | 显示全部楼层

QUOTE:
以下是引用hhzjxss在2007-11-5 8:51:09的发言:
QUOTE:
以下是引用彭希仁在2007-11-5 8:49:18的发言:
QUOTE:
 

讲课qee用版主最在行了

那个帖子好象是你发的呀,何不在EP上转发一下呢?

 

最好多举一些小而易懂的实例!



http://club.excelhome.net/dispbbs.asp?BoardID=2&ID=217298&replyID=&skin=0

这个是qee用版主发的

回复

使用道具 举报

 楼主| 发表于 2007-11-6 11:33 | 显示全部楼层

 彭希仁老师 写的个递归代码

短小精悍高效 再次感谢 

[此贴子已经被作者于2007-11-6 11:37:19编辑过]
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-6-1 04:45 , Processed in 0.116653 second(s), 6 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表