Golang | Leetcode Golang题解之第290题单词规律

题目:

题解:

Go 复制代码
func wordPattern(pattern string, s string) bool {
    word2ch := map[string]byte{}
    ch2word := map[byte]string{}
    words := strings.Split(s, " ")
    if len(pattern) != len(words) {
        return false
    }
    for i, word := range words {
        ch := pattern[i]
        if word2ch[word] > 0 && word2ch[word] != ch || ch2word[ch] != "" && ch2word[ch] != word {
            return false
        }
        word2ch[word] = ch
        ch2word[ch] = word
    }
    return true
}
相关推荐
sin_hielo36 分钟前
leetcode 3623
算法·leetcode·哈希算法
Swift社区2 小时前
LeetCode 439 - 三元表达式解析器
算法·leetcode·ssh
野蛮人6号2 小时前
力扣热题100道之31下一个排列
算法·leetcode·职场和发展
敲代码的嘎仔2 小时前
LeetCode面试HOT100——160. 相交链表
java·学习·算法·leetcode·链表·面试·职场和发展
吃着火锅x唱着歌2 小时前
LeetCode 454.四数相加II
算法·leetcode·职场和发展
敲代码的嘎仔2 小时前
LeetCode面试HOT100—— 206. 反转链表
java·数据结构·学习·算法·leetcode·链表·面试
im_AMBER2 小时前
Leetcode 66 几乎唯一子数组的最大和
数据结构·笔记·学习·算法·leetcode
CoderYanger2 小时前
A.每日一题——2435. 矩阵中和能被 K 整除的路径
开发语言·线性代数·算法·leetcode·矩阵·深度优先·1024程序员节
圣保罗的大教堂2 小时前
leetcode 3623. 统计梯形的数目 I 中等
leetcode
Q741_1472 小时前
C++ 栈 模拟 1047. 删除字符串中的所有相邻重复项 题解 每日一题
c++·算法·leetcode·模拟·