题解 | #牛棚分组#

牛棚分组

https://www.nowcoder.com/practice/d5740e4dde3740828491236c53737af4

所用语言

java

所用知识

递归、数组

解题思路

完整代码

ArrayList<ArrayList<Integer>> lists = new
ArrayList<ArrayList<Integer>>();
public int[][] combine (int n, int k) {
    // write code here
    search(1,k,n,new ArrayList<>());
    int[][] arr = new int[lists.size()][k];
    for(int i=0;i<lists.size();i++){
        for(int j=0;j<lists.get(i).size();j++){
            arr[i][j] = lists.get(i).get(j);
        }
    }
    return arr;
}

public void search(int cur,int cap,int n,ArrayList<Integer> list){
    if(list.size()==cap){
        lists.add(new ArrayList<>(list));
        return;
    }
    if(cur>n){
        return;
    }
    list.add(cur);
    search(cur+1,cap,n,list);
    list.remove(list.size()-1);
    search(cur+1,cap,n,list);
}
#牛棚分组#
全部评论

相关推荐

强大的马里奥:不太可能,我校计算机硕士就业率99%
点赞 评论 收藏
分享
mjasjon:这种trash中厂 简历过筛概率比大厂还低(除阿里系)
投递哔哩哔哩等公司6个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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