Golang | Leetcode Golang题解之第90题子集II

题目:

题解:

Go 复制代码
func subsetsWithDup(nums []int) (ans [][]int) {
    sort.Ints(nums)
    n := len(nums)
outer:
    for mask := 0; mask < 1<<n; mask++ {
        t := []int{}
        for i, v := range nums {
            if mask>>i&1 > 0 {
                if i > 0 && mask>>(i-1)&1 == 0 && v == nums[i-1] {
                    continue outer
                }
                t = append(t, v)
            }
        }
        ans = append(ans, append([]int(nil), t...))
    }
    return
}
相关推荐
6Hzlia17 分钟前
【Hot 100 刷题计划】 LeetCode 152. 乘积最大子数组 | C++ 动态规划 (绝妙 swap 翻转技巧)
c++·leetcode·动态规划
smj2302_7968265218 分钟前
解决leetcode第3901题好子序列查询
python·算法·leetcode
_深海凉_20 分钟前
LeetCode热题100-每日温度
算法·leetcode·职场和发展
脱氧核糖核酸__38 分钟前
LeetCode热题100——54.螺旋矩阵(题解+答案+要点)
c++·算法·leetcode·矩阵
菜菜的顾清寒1 小时前
力扣hot100(17) 缺失的第一个正数
算法·leetcode·职场和发展
XMYX-01 小时前
14 - Go 结构体(struct):从基础到高级实战
开发语言·golang
承渊政道1 小时前
【递归、搜索与回溯算法】(二叉树深搜模型拆解与经典题型全面突破)
数据结构·c++·学习·算法·leetcode·macos·bfs
泽02022 小时前
OJBalancer ----- 基于负载均衡仿leetcode的刷题界面
linux·leetcode·负载均衡
geovindu2 小时前
go: Abstract Factory Pattern
开发语言·后端·设计模式·golang
U盘失踪了2 小时前
go Map
开发语言·golang