Subsets

作者: 一枚煎餅 | 来源:发表于2016-09-09 23:55 被阅读0次
Paste_Image.png Paste_Image.png

===================== 解題思路 =====================

用 backtrack 的方式將每一個數字放進 subset 中, 然後存入 result 基本的套路為

  1. 放入下一筆資料
  2. recursive call (DFS 作法 記得每一次的 DFS 都要修改查找的起點)
  3. 刪除剛放入的資料

===================== C++ code ====================

<pre><code>
class Solution {

public:

/**
 * @param S: A set of numbers.
 * @return: A list of lists. All valid subsets.
 */
void backtrack(vector<vector<int>> &res,  vector<int> &sub, int start, vector<int> &nums)
{
    res.push_back(sub);
    for(int i = start; i < nums.size(); i++)
    {
        sub.push_back(nums[i]);
        backtrack(res, sub, i + 1, nums);
        sub.pop_back();
    }
}

vector<vector<int> > subsets(vector<int> &nums) {
    // write your code here
    vector<vector<int>> res;
    vector<int> sub;
    backtrack(res, sub, 0, nums);
    return res;
}

};
<code><pre>

相关文章

  • LeetCode #78 #90 2018-07-30

    78. Subsets https://leetcode.com/problems/subsets/descrip...

  • 78.Subsets

    78.Subsets 题目:https://leetcode.com/problems/subsets/ 难度 :...

  • Leetcode-backTracking

    Leetcode 78. Subsets. Subsets题,时间复杂度一般是O(2^n), 因为 2^n是子集的...

  • Subsets

    这是一道求子集的题目,题目链接,一开始用了三重循环,复杂度极高,不过还是没有超时。代码如下 代码思路就是每次加入一...

  • subSets

    题目 给定一个含不同整数的集合,返回其所有的子集(子集中的元素排列必须是非降序的,解集必须不包含重复的子集)如果 ...

  • Subsets

    Lintcode--Subsets Despriction Given a set of distinct int...

  • Subsets Ⅱ

    Despriction 给定一个可能具有重复数字的列表,返回其所有可能的子集 ** 注意事项** 子集中的每个元素...

  • Subsets

    //78. Subsets Given a set of distinct integers, nums, ret...

  • Subsets

    ===================== 解題思路 ===================== 用 backtr...

  • Subsets

    Given a set of distinct integers, nums, return all possib...

网友评论

      本文标题:Subsets

      本文链接:https://www.haomeiwen.com/subject/oulyettx.html