频道栏目
首页 > 考试 > 其他 > 正文
LeetCode 39. Combination Sum
2017-03-14 09:27:46      个评论    来源:CloudChen的博客  
收藏   我要投稿

LeetCode 39. Combination Sum。

public class Solution {
    public List> combinationSum(int[] candidates, int target) {
    	Arrays.sort(candidates);
        return combine(candidates, 0, target);
    }
    
    public List> combine(int[] candidates, int s, int k) {
    	List> list = new ArrayList>();
    	for (; s < candidates.length; s++) {
    		if (k < candidates[s]) break;
    		else if (k == candidates[s]) {
    			List tmpList = new ArrayList();
    			tmpList.add(k);
    			list.add(tmpList);
    			break;
    		}
    		else {
    			List> tmp = combine(candidates, s, k - candidates[s]);
    			if (tmp != null) {
    				for (List l : tmp) {
    					l.add(candidates[s]);
    					list.add(l);
    				}
    			}
    		}
    	}
    	return list;
    }
}

点击复制链接 与好友分享!回本站首页
上一篇:leetcode 第28题( Implement strStr())(java)
下一篇:leetcode 第21题(Merge Two Sorted Lists)(java)
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站