【2022-12-13每日一题】1832. 判断句子是否为全字母句[Easy]
2022-12-13
1分钟阅读时长
2022-12-13每日一题:1832. 判断句子是否为全字母句
难度:Easy
标签:哈希表 、 字符串
全字母句 指包含英语字母表中每个字母至少一次的句子。
给你一个仅由小写英文字母组成的字符串 sentence
,请你判断 sentence
是否为 全字母句 。
如果是,返回 true
;否则,返回 false
。
示例 1:
输入:sentence = "thequickbrownfoxjumpsoverthelazydog"
输出:true
解释:sentence
包含英语字母表中每个字母至少一次。
示例 2:
输入:sentence = "leetcode" 输出:false
提示:
1 <= sentence.length <= 1000
sentence
由小写英语字母组成
方法一:哈希表
func checkIfPangram(sentence string) bool {
if len(sentence) < 26 {
return false
}
exist := [26]bool{}
for _, c := range sentence {
exist[c-'a'] = true
}
for _, v := range exist {
if !v {
return false
}
}
return true
}
复杂度分析
- 时间复杂度:O(n)。
- 空间复杂度:O(C),C=26。
方法二:二进制
func checkIfPangram(sentence string) bool {
mask := 0
for _, c := range sentence {
mask |= 1 << (c - 'a')
}
return mask == 1<<26-1
}
复杂度分析
- 时间复杂度:O(n)。
- 空间复杂度:O(1)。