摘要:檢測(cè)大寫(xiě)字母題目鏈接循環(huán)判斷第一個(gè)字母可以是大寫(xiě)或小寫(xiě),所以我們先不對(duì)第一個(gè)字母進(jìn)行判斷。轉(zhuǎn)換成小寫(xiě)字母題目鏈接循環(huán)判斷循環(huán)判斷整個(gè)字符串,如果發(fā)現(xiàn)當(dāng)前字符是大寫(xiě)的,就將其轉(zhuǎn)為小寫(xiě)。
很明顯這道題具有很強(qiáng)的規(guī)律,所以讓我們來(lái)找規(guī)律。
觀察發(fā)現(xiàn),奇數(shù)行和偶數(shù)行的白色格子總是錯(cuò)一個(gè),這就給這道題加上了很強(qiáng)的奇偶特征。
class Solution {public: bool squareIsWhite(string coordinates) { if((coordinates[0]+coordinates[1]-"a"-"0")%2==0) return true; return false; }};
依據(jù)題意模擬
class Solution {public: int calculate(string s) { int x=1,y=0; for(int i=0;i<s.size();i++) { if(s[i]=="A") x=2*x+y; else y=2*y+x; } return x+y; }};
依據(jù)題意模擬
class Solution {public: int finalValueAfterOperations(vector<string>& operations) { int x=0; for(auto t:operations){ if(t=="--X"||t=="X--") x--; else x++; } return x; }};
把原串遍歷一遍,切分除所有長(zhǎng)度為三的子串,判斷是否有重復(fù)元素。
class Solution {public: int countGoodSubstrings(string s) { if(s.size()<3) return 0; int ans=0; for(int i=0;i<s.size()-2;i++){ string t=s.substr(i,3); if(t[0]!=t[1]&&t[1]!=t[2]&&t[0]!=t[2]) ans++; } return ans; }};
第一個(gè)字母可以是大寫(xiě)或小寫(xiě),所以我們先不對(duì)第一個(gè)字母進(jìn)行判斷。第二個(gè)字母到字符串末尾最后一個(gè)字母的大小寫(xiě)情況必須相同,所以我們用第二個(gè)字母的大小寫(xiě)情況來(lái)定義規(guī)則,后面依次和規(guī)則進(jìn)行比較。還有一點(diǎn),就是第一個(gè)字母小寫(xiě)后面的字母全是大寫(xiě)的情況也是不合法的,于是如果第一個(gè)字母是小寫(xiě)的我們的規(guī)則就需要改變一下,也就是說(shuō)第一個(gè)字母小寫(xiě)后面的字母必須全是小寫(xiě)。
class Solution {public: bool detectCapitalUse(string word) { bool st=word[1]>="A"&&word[1]<="Z"; if(word[0]>="a"&&word[0]<="z") st=false; for(int i=1;i<word.size();i++){ if(st!=(word[i]>="A"&&word[i]<="Z")) return false; } return true; }};
循環(huán)判斷整個(gè)字符串,如果發(fā)現(xiàn)當(dāng)前字符是大寫(xiě)的,就將其轉(zhuǎn)為小寫(xiě)。
ASCLL值大小寫(xiě)字母差32,可以直接對(duì)字符進(jìn)行加減法,實(shí)質(zhì)是對(duì)ASCLL碼做出的加減法
class Solution {public: string toLowerCase(string s) { for(int i=0;i<s.size();i++){ if(s[i]>="A"&&s[i]<="Z") s[i]+=32; } return s; }};
循環(huán)整個(gè)字符串,定義兩個(gè)變量分別存兩半的元音字母數(shù)
class Solution {public: bool halvesAreAlike(string s) { int ans1=0,ans2=0; for(int i=0;i<s.size();i++){ if(i<s.size()/2){ if(s[i]=="a"||s[i]=="e"||s[i]=="o"||s[i]=="i"||s[i]=="u"||s[i]=="A"||s[i]=="O"||s[i]=="E"||s[i]=="I"||s[i]=="U") ans1++; } else{ if(s[i]=="a"||s[i]=="e"||s[i]=="o"||s[i]=="i"||s[i]=="u"||s[i]=="A"||s[i]=="O"||s[i]=="E"||s[i]=="I"||s[i]=="U") ans2++; } } return ans1==ans2; }};
class Solution {public: char shift(char c,int x) { return c+x; } string replaceDigits(string s) { for(int i=1;i<s.size();i+=2) { s[i]=shift(s[i-1],s[i]-"0"); } return s; }};
循環(huán)整個(gè)字符串,找出其中是數(shù)字的片段,如果這個(gè)數(shù)字沒(méi)見(jiàn)過(guò),就加到集合里面去(加前注意去除前導(dǎo)0)并且給答案數(shù)加一
class Solution {public: int numDifferentIntegers(string word) { set<string>cnt; int ans=0; int res=0; string ch; for(int i=0;i<word.size();i++) { if(word[i]>="0"&&word[i]<="9") { ch+=word[i]; } else { int t=0; while(ch[t]=="0") t++; if(ch.size()&&cnt.find(ch.substr(t))==cnt.end()) { cnt.insert(ch.substr(t)); ans++; } ch.clear(); } } if(ch.size()) { int t=0; while(ch[t]=="0") t++; if(cnt.find(ch.substr(t))==cnt.end()) ans++; } return ans; }};
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/123051.html
摘要:題目鏈接題目分析這個(gè)題目要求返回所傳字符串的全小寫(xiě)形式。思路按照語(yǔ)言的思路,遍歷每個(gè)字符,判斷是不是大寫(xiě)。是大寫(xiě)則轉(zhuǎn)換成小寫(xiě)。具體轉(zhuǎn)換方法是對(duì)這個(gè)大寫(xiě)字符減去再加。因此,我們用原生函數(shù)來(lái)實(shí)現(xiàn)。 709. To Lower Case 題目鏈接 709. To Lower Case 題目分析 這個(gè)題目要求返回所傳字符串的全小寫(xiě)形式。 思路 按照C語(yǔ)言的思路,遍歷每個(gè)字符,判斷是不是大寫(xiě)。是...
摘要:另外,在損失函數(shù)中加入感知正則化則在一定程度上可緩解該問(wèn)題。替代損失函數(shù)修復(fù)缺陷的最流行的補(bǔ)丁是。的作者認(rèn)為傳統(tǒng)損失函數(shù)并不會(huì)使收集的數(shù)據(jù)分布接近于真實(shí)數(shù)據(jù)分布。原來(lái)?yè)p失函數(shù)中的對(duì)數(shù)損失并不影響生成數(shù)據(jù)與決策邊界的距離。 盡管 GAN 領(lǐng)域的進(jìn)步令人印象深刻,但其在應(yīng)用過(guò)程中仍然存在一些困難。本文梳理了 GAN 在應(yīng)用過(guò)程中存在的一些難題,并提出了的解決方法。使用 GAN 的缺陷眾所周知,G...
摘要:此專欄文章是對(duì)力扣上算法題目各種方法的總結(jié)和歸納整理出最重要的思路和知識(shí)重點(diǎn)并以思維導(dǎo)圖形式呈現(xiàn)當(dāng)然也會(huì)加上我對(duì)導(dǎo)圖的詳解目的是為了更方便快捷的記憶和回憶算法重點(diǎn)不用每次都重復(fù)看題解畢竟算法不是做了一遍就能完全記住的所 ...
摘要:題目鏈接題目分析給定一個(gè)單詞,判斷其使用大寫(xiě)的方式正確與否。用的結(jié)果和包含全大寫(xiě)或全小寫(xiě)的數(shù)組計(jì)算差集,結(jié)果為空集則說(shuō)明為全大寫(xiě)或全小寫(xiě)。除了全大寫(xiě)和全小寫(xiě)的情況外,只能出現(xiàn)首字母大寫(xiě),其余字母小寫(xiě)的情況。 D81 520. Detect Capital 題目鏈接 520. Detect Capital 題目分析 給定一個(gè)單詞,判斷其使用大寫(xiě)的方式正確與否。 思路 如果給定單詞是全大寫(xiě)...
此專欄文章是對(duì)力扣上算法題目各種方法的總結(jié)和歸納, 整理出最重要的思路和知識(shí)重點(diǎn)并以思維導(dǎo)圖形式呈現(xiàn), 當(dāng)然也會(huì)加上我對(duì)導(dǎo)圖的詳解. 目的是為了更方便快捷的記憶和回憶算法重點(diǎn)(不用每次都重復(fù)看題解), 畢竟算法不是做了一遍就能完全記住的. 所以本文適合已經(jīng)知道解題思路和方法, 想進(jìn)一步加強(qiáng)理解和記憶的朋友, 并不適合第一次接觸此題的朋友(可以根據(jù)題號(hào)先去力扣看看官方題解, 然后再看本文內(nèi)容). 關(guān)...
閱讀 3616·2021-11-24 09:39
閱讀 2546·2021-11-15 11:37
閱讀 2211·2021-11-11 16:55
閱讀 5154·2021-10-14 09:43
閱讀 3703·2021-10-08 10:05
閱讀 3006·2021-09-13 10:26
閱讀 2327·2021-09-08 09:35
閱讀 3535·2019-08-30 15:55