m个数中取n个数的组合算法
请问各个大牛有哪些好的算法来实现m个数中取n个数的组合?
比如有10个数{1,2,3,4,5,6,7,8,9,10}然后抽取6个数进行组合
如下:
1 2 3 4 5 6
1 2 3 4 5 7
1 2 3 4 5 8
1 2 3 4 5 9
......
是组合,所以不考虑排列问题
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(8)
n取m得到数量:
list取m得到所有结果:
m!/(m-n)!/n!
m>n
如果m=n, 数量是1
求数量,还是随机抽取,还是作为什么?
递归关系是这个
m 中取n个元素等于
取m中的第一个元素, 再在剩余的m-1中取n-1个元素
或者 在剩余的m-1个中取 n个元素
C(m, n) = C(m-1, n-1) + C(m-1, n)
特例就是:
当n为0的时候, 以及当m小于n的时候
哎~~~~木人来看哦
网上很多啊,随便找找都有了。
http://blog.sina.com.cn/s/blog_49b05ad00100dkbi.html
递归写写好了。
网上很多啊,随便找找都有了。
http://blog.sina.com.cn/s/blog_49b05ad00100dkbi.html
递归写写好了。