
 
思路:
 
- 首先,我们初始化了一个长度为 26 的布尔值列表 exist,所有值都为False,表示所有字母初始都未出现过。
- 然后,我们遍历输入的字符串 sentence中的每个字符。
- 对于每个字符,我们通过计算其 ASCII 码值减去字母 'a' 的 ASCII 码值来确定其在 exist列表中的索引位置。比如字符 'a' 对应的索引为 0,字符 'b' 对应的索引为 1,以此类推。
- 我们将对应字母的位置在 exist列表中设置为True,表示该字母已经出现过。
- 最后,我们使用 Python 中的 all函数检查是否所有字母都已经出现过,如果是则返回True,表示输入的字符串是 pangram;否则返回False,表示不是 pangram。
题解:
 
class Solution:def checkIfPangram(self, sentence: str) -> bool:# 创建一个长度为 26 的布尔值列表,用于记录每个字母是否出现过exist = [False] * 26# 遍历输入的字符串中的每个字符for c in sentence:# 根据当前字符的 ASCII 值确定其在列表中的位置,将该位置的值设置为 True,表示该字母已经出现过exist[ord(c) - ord('a')] = True# 判断是否所有字母都已经出现过,如果是则返回 True,表示是 pangram;否则返回 False,表示不是 pangramreturn all(exist)