LeetCode-1832. 判断句子是否为全字母句哈希表,位运算
题目描述:
全字母句 指包含英语字母表中每个字母至少一次的句子。
给你一个仅由小写英文字母组成的字符串 sentence ,请你判断 sentence 是否为 全字母句 。
如果是,返回 true ;否则,返回 false 。
示例 1:
输入:sentence = “thequickbrownfoxjumpsoverthelazydog”
输出:true
解释:sentence 包含英语字母表中每个字母至少一次。
示例 2:
输入:sentence = “leetcode”
输出:false
提示:
1 <= sentence.length <= 1000
sentence 由小写英语字母组成
https://leetcode.cn/problems/check-if-the-sentence-is-pangram/
解题思路一:用数组记录,一次遍历。
class Solution {
public:
bool checkIfPangram(string sentence) {
vector<int> cnt(26);
for(char c:sentence) cnt[c-'a'];
for(int freq:cnt) if(freq==0) return false;
return true;
}
};
时间复杂度:O(n)
空间复杂度:O©c=26
解题思路二:位运算,最终判断mask是否为26个1即(1 << 26) - 1
class Solution {
public:
bool checkIfPangram(string sentence) {
int mask = 0;
for (char& c : sentence) mask |= 1 << (c - 'a');
return mask == (1 << 26) - 1;
}
};
时间复杂度:O(n)
空间复杂度:O(1)
解题思路三:0
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgfgjac
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
怎样阻止微信小程序自动打开
PHP中文网 06-13 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01