78leetcode

发布时间:2026/7/30 1:19:22

78leetcode import java.util.ArrayList; import java.util.List; class Solution { public ListListInteger subsets(int[] nums) { // 临时集合存放当前正在构造的子集 ListInteger t new ArrayList(); // 最终结果保存所有子集 ListListInteger ans new ArrayList(); // 数组长度 int n nums.length; // mask 掩码遍历0 ~ (2^n - 1) for (int mask 0; mask (1 n); mask) { // 每次构造新子集前清空临时容器 t.clear(); // 检查每一位二进制 for (int i 0; i n; i) { // 判断 mask 的第 i 位是不是 1 if ((mask (1 i)) ! 0) { t.add(nums[i]); } } // 拷贝临时集合存入结果重点不能直接 add(t) ans.add(new ArrayList(t)); } return ans; } }

相关新闻