LeetCode 78.Subsets
来源:互联网 发布:cad制作软件 编辑:程序博客网 时间:2024/06/05 22:57
Description:
Given a set of distinct integers, nums, return all possible subsets (the power set).
Note: The solution set must not contain duplicate subsets.
For example,
If nums = [1,2,3], a solution is:
[ [3], [1], [2], [1,2,3], [1,3], [2,3], [1,2], []]
该题是比较经典的排列组合中的组合问题。我的解法是通过递归的方式求解。想到用递归是因为该问题可以分解成子问题求解:假设一共有n个数,要求一个m组合,那么求解的过程可以分解为首先从n个数中取一个数,然后求剩下的n-1个数的m-1组合。
代码如下:
class Solution {public: vector<vector<int>> subsets(vector<int>& nums) { vector<vector<int>> result; result.push_back(vector<int>()); int size = nums.size(); vector<int> subset; for(int i = 1; i <= size; i++) { vector<int> subset; generate(result, subset, i, 0, size, nums); } return result; } void generate(vector<vector<int>> & result, vector<int>& subset, int count, int index, int size, vector<int>& nums) { if(count == 0) { result.push_back(subset); return; } for(int i = index; i <= size - count; i++) { subset.push_back(nums[i]); generate(result, subset, count - 1, i + 1, size, nums); subset.pop_back(); } }};
阅读全文
0 0
- LeetCode 78. Subsets
- [LeetCode]78.Subsets
- LeetCode --- 78. Subsets
- [Leetcode] 78. Subsets
- [leetcode] 78.Subsets
- 【leetcode】78. Subsets
- Leetcode 78. Subsets
- 78. Subsets LeetCode
- [leetcode] 78. Subsets
- leetcode 78. Subsets
- Leetcode 78. Subsets
- LeetCode *** 78. Subsets
- LeetCode 78. Subsets
- LeetCode-78.Subsets
- leetcode 78. Subsets
- LeetCode - 78. Subsets
- [LeetCode] 78. Subsets
- 【题解】Leetcode.78.Subsets
- 【第一次机房收费系统】思路的宏观把控
- UICollectionView的简单使用
- 02_Java基础_第2天(变量、运算符)
- 设置表体某行某字段的可编辑属性?
- PhotonServer小案例Demo
- LeetCode 78.Subsets
- window.open 内存泄漏,这坑好深,谁能指点迷津
- 数字成像系统ISP(Image signal processor)原理
- JAVA中静态代码块
- ICCV 2015 Multiple Hypothesis Tracking Revisited 阅读笔记
- 开发者社区Stack Overflow大规模裁员 占比20%
- 从零开始写一个博客 day1
- Linux 安装idea
- 二次开发扩展按钮的状态问题