Golang | Leetcode Golang题解之第318题最大单词长度乘积

题目:

题解:

Go 复制代码
func maxProduct(words []string) (ans int) {
    masks := map[int]int{}
    for _, word := range words {
        mask := 0
        for _, ch := range word {
            mask |= 1 << (ch - 'a')
        }
        if len(word) > masks[mask] {
            masks[mask] = len(word)
        }
    }

    for x, lenX := range masks {
        for y, lenY := range masks {
            if x&y == 0 && lenX*lenY > ans {
                ans = lenX * lenY
            }
        }
    }
    return
}
相关推荐
jieyucx13 分钟前
Go语言深度解剖:Map扩容机制全解析(增量扩容+等量扩容+渐进式迁移)
开发语言·后端·golang·map·扩容策略
刃神太酷啦38 分钟前
扒透 STL 底层!map/set 如何封装红黑树?迭代器逻辑 + 键值限制全手撕----《Hello C++ Wrold!》(23)--(C/C++)
java·c语言·javascript·数据结构·c++·算法·leetcode
王码码203541 分钟前
Go语言的内存管理:原理与实战
后端·golang·go·接口
_深海凉_2 小时前
LeetCode热题100-分割回文串
算法·leetcode·职场和发展
~|Bernard|4 小时前
一.go语言中slice底层原理(2026-5-7)
golang·go
流年如夢5 小时前
单链表Ⅲ(LeetCode)
数据结构·算法·leetcode·职场和发展
~|Bernard|7 小时前
二.go语言中map的底层原理(2026-5-8)
算法·golang·哈希算法
mask哥8 小时前
力扣算法java实现汇总整理(下)
java·算法·leetcode
平凡但不平庸的码农8 小时前
Go 错误处理详解
开发语言·后端·golang
样例过了就是过了8 小时前
LeetCode热题100 编辑距离
数据结构·c++·算法·leetcode·动态规划