关注
最后一道题 花了一个多小时想出来的!!!!!!!!!!!!!!!
public class 数组排列求和Demo {
public static void main(String[] args) {
int[] question= {1,3,8,2,7,9,5,4,1,5,4,1,2,2,3};
ArrayList ans = new ArrayList();
数组排列求和Demo m = new 数组排列求和Demo();
m.calculation(question,ans,16,0,0);
}
/**
* 求数组中所有和为target的集合
* 递归方法,回溯方法
* @param q 给定一个数组
* @param ans 展示可能性的链表
* @param target 问题
* @param i 表示层数,必须输入0
* @param sum 表示当前总数,必须输入0
*/
public void calculation(int[]q,ArrayList ans , int target,int i,int sum) {
for(int t = i;t<q.length;t++){
if(sum+q[t]>target){continue;}
if(sum+q[t]==target){
ans.add(q[t]);
System.out.println(ans);
ans.remove(ans.size()-1);
}
ans.add(q[t]);
sum+=q[t];
calculation(q,ans,target,t+1,sum);
//判断
ans.remove(ans.size()-1);
sum-=q[t];
}
}
查看原帖
点赞 评论
相关推荐
10-19 17:04
门头沟学院 web前端 点赞 评论 收藏
分享
10-20 18:54
门头沟学院 web前端 点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
正在热议
# 25届秋招公司红黑榜 #
82796次浏览 502人参与
# 双非能在秋招上岸吗? #
23069次浏览 149人参与
# 简历被挂麻了,求建议 #
2314938次浏览 31937人参与
# 秋招拿一个offer可以躺平吗 #
81975次浏览 665人参与
# 你的秋招进展怎么样了 #
1578672次浏览 24146人参与
# 如果能重来,就业or读研你选哪个? #
27161次浏览 225人参与
# 如何一边实习一边秋招 #
933693次浏览 12049人参与
# 软开人,秋招你打算投哪些公司呢 #
33520次浏览 396人参与
# 如何看待offer收割机的行为 #
498869次浏览 4905人参与
# 网易求职进展汇总 #
19764次浏览 163人参与
# 实习与准备秋招该如何平衡 #
629750次浏览 7615人参与
# 反问环节如何提问 #
57384次浏览 1455人参与
# 应届生应该先就业还是先择业 #
42194次浏览 250人参与
# 简历无回复,你会继续海投还是优化再投? #
42021次浏览 524人参与
# 求职你最看重什么? #
11868次浏览 97人参与
# 你会选择考研还是直接就业 #
159359次浏览 1760人参与
# 如果可以,你希望哪个公司来捞你 #
25600次浏览 165人参与
# 学信网能看师兄师姐就业去向了 #
114729次浏览 321人参与
# 没有实习经历,还有机会进大厂吗 #
755999次浏览 13377人参与
# 安利/避雷我的岗位 #
353021次浏览 4420人参与