77. 组合
Posted zzytxl
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了77. 组合相关的知识,希望对你有一定的参考价值。
给定两个整数 n 和 k,返回 1 ... n 中所有可能的 k 个数的组合。
示例:
输入: n = 4, k = 2 输出: [ [2,4], [3,4], [2,3], [1,2], [1,3], [1,4], ]
class Solution { public List<List<Integer>> combine(int n, int k) { // k个数 List<List<Integer>> lists= new ArrayList<>(); if(n < 1 || k > n || k < 1) return lists; help(n,k,1,new ArrayList<Integer>(),lists); return lists; } private void help(int n,int k,int index,List<Integer> list,List<List<Integer>> lists){ // if(index == n + 1) return; if(list.size() == k){ lists.add(new ArrayList<>(list)); return; } for(int i = index;i <= n;i++){ list.add(i); help(n,k,i + 1,list,lists); list.remove(list.size() - 1); } } }
以上是关于77. 组合的主要内容,如果未能解决你的问题,请参考以下文章