关于排列的算法

时间:2008-09-26 08:28   作者:ChenReal    阅读:319

昨天阿蛋兄给我出了一道题。

  • 有一个集合,如{1,2,3,4,5,6,7},需要从中抽取任意个(1-n)元素,进行求和
  • 然后结果把结果最接近的组合筛选出来
  • 比如预设值是10
  • 这样上面的集合中{1,2,3,4},{3,7},{4,6},{1,2,7}等等便是满足条件的组合

这里其实用组合的算法就可以实现了的,温习了组合的算法参考了一些人家的例子,自己写了一个js版本的,不过在集合超过20个数字的情况下效率就变得很低了。

按照组合的两种比较常用的算法(1、递归,2、排序),我现在用的属于“排序”,据说递归的效率也很差。

不知道有没有强人,能够提供一些其它思路或者改进的方法呢?期待ing。。。

Demo的地址:http://blog.chenreal.com/demo/array

 

评论
0/200