- 1 题目描述
- 2 示例描述
- 2.1 示例1
- 2.2 示例2
- 3 解题提示
- 4 解题思路
- 5 代码详解
2 示例描述 2.1 示例1全字母句 指包含英语字母表中每个字母至少一次的句子。
给你一个仅由小写英文字母组成的字符串 sentence ,请你判断 sentence 是否为 全字母句 。
如果是,返回 true ;否则,返回 false 。
2.2 示例2输入:sentence = “thequickbrownfoxjumpsoverthelazydog”
输出:true
解释:sentence 包含英语字母表中每个字母至少一次。
3 解题提示输入:sentence = “leetcode”
输出:false
4 解题思路1 <= sentence.length <= 1000
sentence 由小写英语字母组成
5 代码详解简单来说就是一个哈希表,创建一个26位的数组,把出现过的小写字母作为哈希表的下标显示,然后遍历0-25的位数,若出现0的数,则表示为满足条件,若出现字符串小于26,则表示不满足26个字符全部出现一遍,可以直接枝剪掉。
class Solution { public: bool checkIfPangram(string sentence) { int ans[26] = {0}; int ascii = 0 ; if( sentence.length() < 26) { return false ; } for ( int i = 0 ; i < sentence.length() ; i++ ) { ascii = sentence[i]; ascii = ascii -97 ; ans[ascii] ++ ; } int i = 0 ; while( ans[i] != 0 ) { i ++ ; if ( i == 26 ) { return true ; } } return false ; } };
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)