给定一个整数数组 nums,数组中的元素互不相同,请实现求所有子集的算法(LeetCode 第 78 题/剑指 Offer II 079)。
考察说明
考察回溯算法或位运算实现子集枚举的能力,以及时间空间复杂度分析
回答思路
- 理解子集总数与二进制位、回溯递归的关系
- 给出清晰的递归/回溯实现,穷举选取或不选取每个元素
- 或使用位运算:每个数字对应一个子集,检查每一位是否包含
- 正确分析时间复杂度 O(n*2^n) 与空间复杂度 O(n)
- 处理边界:空数组返回空子集
本题已收录答题指导
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。