1832.判断句子是否为全字母句

【LetMeFly】1832.判断句子是否为全字母句

力扣题目链接:https://leetcode.cn/problems/check-if-the-sentence-is-pangram/

全字母句 指包含英语字母表中每个字母至少一次的句子。

给你一个仅由小写英文字母组成的字符串 sentence ,请你判断 sentence 是否为 全字母句

如果是,返回 true ;否则,返回 false

 

示例 1:

输入:sentence = "thequickbrownfoxjumpsoverthelazydog"
输出:true
解释:sentence 包含英语字母表中每个字母至少一次。

示例 2:

输入:sentence = "leetcode"
输出:false

 

提示:

  • 1 <= sentence.length <= 1000
  • sentence 由小写英语字母组成

方法一:统计

我们只需要开辟大小为$26$的布尔类型的数组(初始值全为$false$),然后遍历原始字符串

在遍历过程中,直接将字符串对应的布尔值修改为$true$

最后,再遍历一遍布尔类型的数组,如果发现哪个布尔值仍未$false$,就说明这个布尔值对应的字母没有在字符串中出现过,也就是说这个字符串不是“全字母句”,直接返回$false$

否则,遍历结束未返回$false$,则返回$true$

  • 时间复杂度$O(len(sentence))$
  • 空间复杂度$O(C)$,其中$C=26$,这里写成$O(1)$也可

AC代码

C++

1
2
3
4
5
6
7
8
9
10
11
12
13
class Solution {
public:
bool checkIfPangram(string& sentence) {
bool visited[26] = {false};
for (char c : sentence)
visited[c - 'a'] = true;
for (int i = 0; i < 26; i++) {
if (!visited[i])
return false;
}
return true;
}
};

同步发文于CSDN,原创不易,转载请附上原文链接哦~
Tisfy:https://letmefly.blog.csdn.net/article/details/128304160


1832.判断句子是否为全字母句
https://blog.letmefly.xyz/2022/12/13/LeetCode 1832.判断句子是否为全字母句/
作者
Tisfy
发布于
2022年12月13日
许可协议