C++ LeetCode1832題解判斷句子是否為全字母句
LeetCode 1832.判斷句子是否為全字母句
力扣題目鏈接:leetcode.cn/problems/ch…
全字母句 指包含英語字母表中每個字母至少一次的句子。
給你一個僅由小寫英文字母組成的字符串 sentence
,請你判斷 sentence
是否為 全字母句 。
如果是,返回 true
;否則,返回 false
。
示例 1:
輸入:sentence = "thequickbrownfoxjumpsoverthelazydog"
輸出:true
解釋:輸入:sentence = "thequickbrownfoxjumpsoverthelazydog"
輸出:true
解釋:sentence 包含英語字母表中每個字母至少一次。
包含英語字母表中每個字母至少一次。
示例 2:
輸入:sentence = "leetcode"
輸出:false
提示:
1 <= sentence.length <= 1000
sentence
由小寫英語字母組成
方法一:統(tǒng)計(jì)
我們只需要開辟大小為26的布爾類型的數(shù)組(初始值全為false),然后遍歷原始字符串
在遍歷過程中,直接將字符串對應(yīng)的布爾值修改為true
最后,再遍歷一遍布爾類型的數(shù)組,如果發(fā)現(xiàn)哪個布爾值仍未false,就說明這個布爾值對應(yīng)的字母沒有在字符串中出現(xiàn)過,也就是說這個字符串不是“全字母句”,直接返回false
否則,遍歷結(jié)束未返回false,則返回true
- 時(shí)間復(fù)雜度O(len(sentence))
- 空間復(fù)雜度O(C),其中C=26,這里寫成O(1)也可
AC代碼
C++
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; } };
以上就是C++ LeetCode1832題解判斷句子是否為全字母句的詳細(xì)內(nèi)容,更多關(guān)于C++ 判斷是否為全字母句的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
超詳細(xì)分析C語言動態(tài)內(nèi)存管理問題
動態(tài)內(nèi)存是相對靜態(tài)內(nèi)存而言的。所謂動態(tài)和靜態(tài)就是指內(nèi)存的分配方式。動態(tài)內(nèi)存是指在堆上分配的內(nèi)存,而靜態(tài)內(nèi)存是指在棧上分配的內(nèi)存,本文帶你深入探究C語言中動態(tài)內(nèi)存的管理2022-04-04C語言實(shí)現(xiàn)銷售管理系統(tǒng)課程設(shè)計(jì)
這篇文章主要為大家詳細(xì)介紹了C語言實(shí)現(xiàn)銷售管理系統(tǒng)課程設(shè)計(jì),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-03-03利用C++實(shí)現(xiàn)計(jì)算機(jī)輔助教學(xué)系統(tǒng)
我們都知道計(jì)算機(jī)在教育中起的作用越來越大。這篇文章主要為大家詳細(xì)介紹了如何利用C++編寫一個計(jì)算機(jī)輔助教學(xué)系統(tǒng),感興趣的可以了解一下2023-05-05opencv2基于SURF特征提取實(shí)現(xiàn)兩張圖像拼接融合
這篇文章主要為大家詳細(xì)介紹了opencv2基于SURF特征提取實(shí)現(xiàn)兩張圖像拼接融合,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-03-03QT實(shí)現(xiàn)按鈕開關(guān)Form窗體的效果的示例代碼
本文主要介紹了QT實(shí)現(xiàn)按鈕開關(guān)Form窗體的效果的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07