首页 新闻 会员 周边 捐助

请教个算法,一个整形数组中找出相加元素等于10的组合

0
[待解决问题]

请教个算法,一个整形数组中找出相加元素等于10的组合,并输出。 比如说{2,5,-1,9,3,0},就应该有{2,5,3}{2,-1,9}{2,5,3,0}{2,-1,9,0}四种组合,这当然举个例子,实际数组不确定,请教大神开支招,回帖算法

tangww0826的主页 tangww0826 | 菜鸟二级 | 园豆:202
提问于:2016-03-02 00:30
< >
分享
所有回答(2)
0

你是要优化方案,还是要实现方案?

吴瑞祥 | 园豆:29449 (高人七级) | 2016-03-02 07:57

优化的方案更好了,谢谢大神

支持(0) 反对(0) tangww0826 | 园豆:202 (菜鸟二级) | 2016-03-02 08:58

@tangww0826: 实现方案就是遍历.排列组合出所有元素.然后计算出那些组合的和为10

优化方案就是先去重.然后排序.排序之后能做的优化就多了,就不列了.

支持(0) 反对(0) 吴瑞祥 | 园豆:29449 (高人七级) | 2016-03-02 09:23

@吴瑞祥: 排列组合的话,应该2的指数形式增加复杂度,有点不怎么好,能给一种排序过后的优化算法么,谢谢

支持(0) 反对(0) tangww0826 | 园豆:202 (菜鸟二级) | 2016-03-02 09:30

@tangww0826:  比如加到超过10就可以结束这次循环了.

支持(1) 反对(0) 吴瑞祥 | 园豆:29449 (高人七级) | 2016-03-02 10:14
0

可以搜索下贪心算法中的背包问题。

逐影 | 园豆:982 (小虾三级) | 2016-03-02 12:22
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册