JAVA版《集合的所有子集》

集合的所有子集

http://www.nowcoder.com/questionTerminal/c333d551eb6243e0b4d92e37a06fbfc9

回溯算法

import java.util.*;
public class Solution {
    ArrayList<ArrayList<Integer>> res = new ArrayList<>();
    public ArrayList<ArrayList<Integer>> subsets(int[] S) {
        LinkedList<Integer> track = new LinkedList<>();
        back(S, 0, track);
        return res;
    }
    public void back(int[] S, int start, LinkedList<Integer> track){
        res.add(new ArrayList<>(track));
        for(int i = start; i < S.length; i++){
            track.add(S[i]);
            back(S, i+1, track);
            //撤销 回溯
            track.removeLast();
        }
    }
}


全部评论

相关推荐

点赞 评论 收藏
分享
自由水:笑死了,敢这么面试不敢让别人说
点赞 评论 收藏
分享
06-27 18:45
中山大学 Ruby
25届应届毕业生,来广州2个礼拜了,找不到工作,绝望了,太难过了…
应届想染班味:9爷找不到工作只能说明,太摆了或者太挑了。
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务