題目:
給定兩個字串 s1 和 s2,請編寫乙個程式,確定其中乙個字串的字元重新排列後,能否變成另乙個字串。
示例 1:
輸入: s1 = "abc", s2 = "bca"
輸出: true
示例 2:
輸入: s1 = "abc", s2 = "bad"
輸出: false
說明:
0 <= len(s1) <= 100
0 <= len(s2) <= 100
解題思路:
1.借助輔助陣列,大小為ascii碼的範圍,陣列的初始值為0
2.遍歷字串s1,記錄各元素出現的次數
3.遍歷字串s2,如果當前元素在陣列中的值為0,表示在s1中未出現過,則返回false;反之,則將此元素的個數減1
4. s2遍歷結束,則返回true
**實現:
class solution ;
for(int i=0;i執行占用的記憶體和耗時情況:
力扣面試題 判定是否互為字元重排
示例 1 輸入 s1 abc s2 bca 輸出 true 示例 2 輸入 s1 abc s2 bad 輸出 false 說明 0 len s1 100 0 len s2 100 與上乙個面試題的第二種解題方式類似,首先判斷兩個字串長度是否相同,如果長度都不相同就不可能是了。接著定義乙個大小為26的...
判定是否互為字元重排
題目描述 給定兩個字串 s1 和 s2,請編寫乙個程式,確定其中乙個字串的字元重新排列後,能否變成另乙個字串。示例1 輸入 s1 abc s2 bca 輸出 true 示例2 輸入 s1 abc s2 bad 輸出 false 根據題目的描述,我的思路就是 比較s1和s2的每個相同字母是數量,如果每...
面試題 01 01 判定字元是否唯一
實現乙個演算法,確定乙個字串 s 的所有字元是否全都不同。此題首先可以問一下是否為ascii字元還是unicode字元。對於ascii字元來說最多就256個字元,因此,如果大於256在false。自己解 bool isunique string astr return true 金典解 bool i...