#include "s0078_subsets.hpp" void subsetsDFS(vector &subset, vector> &result, vector &nums, int startIndex) { int size = nums.size(); // 结束条件 if (startIndex == size) return; for (int i = startIndex; i < size; ++i) { subset.push_back(nums[i]); result.push_back(subset); subsetsDFS(subset, result, nums, i + 1); subset.pop_back(); } } vector> S0078::subsets(vector& nums) { vector subset{}; vector> result{}; subsetsDFS(subset, result, nums, 0); result.push_back(vector{}); return result; }