今天刷的是offer題:判斷兩個字串是否為字元重排
由於時間原因,我最先想到的是遍歷第乙個字串,然後從第二個字串中每次刪除第乙個字串中遍歷的字元,如果最後剩下的是空串則返回true,否則返回false。
**如下:
1提交後正確通過,但是時間複雜度太高。class
solution
10else
if(size1!=size2)
1114
else
1524
else
252829}
30}31return
true;32
33}34 };
於是想到可以把兩個字串只遍歷一遍,然後統計每個字元出現的次數這種方法。
**如下:
1結果時間複雜度只有n,提交結果如下:class
solution
11else
if(size1!=size2)
1215
else
16;//
用來儲存每個字元的出現次數
18//
遍歷字串1,統計每個字元出現的次數
19for(int i=0;i)
2024
//遍歷字串2,每次在陣列中對應元素減1
25for(int i=0;i)
2633}34
}35return
true;36
37}38 };
字串 判斷是否
字串判斷的所有 isdigit 是否全是數字 isalpha 是否全是由字母組成 返回true isalnum 是否由字母和數字組成 islower 是否都是小寫字母 isupper 是否都是大寫字母 istitle 是否英文本母首字母都是大寫 isalpha 是否全是英文 中文的漢字會被判為tru...
判斷字串 python判斷字串是否包含字母
第一種方法 使用正規表示式判斷字串是否包含字母 coding utf 8 import re def check str my re re.compile r a za z re.s res re.findall my re,str if len res print u 含有英文本元 else pr...
leetcode 判斷旋轉字串
給定s1 aabcd和s2 bcdaa,返回1,給定s1 abcd和s2 acbd,返回0.拿到題目,經過思考其實我們可以將題目的思路轉化為,將s1每次旋轉一次來和s2比較大小,相同則返回1,不同則返回0,將s1旋轉strlen s1 次即可完成比較,這裡其實大家不用考慮左旋還是右旋的問題,因為旋轉...