LintCode 55 比较字符串

时间:2021-05-22 13:49:41

比较两个字符串A和B,确定A中是否包含B中所有的字符。字符串A和B中的字符都是 大写字母

注意事项

在 A 中出现的 B 字符串里的字符不需要连续或者有序。

 
样例

给出 A = "ABCD" B = "ACD",返回 true

给出 A = "ABCD"  B = "AABC", 返回 false

思路:直接hash表

 class Solution {
public:
/**
* @param A: A string includes Upper Case letters
* @param B: A string includes Upper Case letter
* @return: if string A contains all of the characters in B return true
* else return false
*/
bool compareStrings(string A, string B) {
// write your code here
int ns[] = {};
int i, len_a = A.length(), len_b = B.length();
for (i = ; i < len_a; i++) {
ns[A[i] - 'A']++;
}
for (i = ; i < len_b; i++) {
if (ns[B[i] - 'A'] <= )
return false;
else
ns[B[i] - 'A']--;
}
return true;
}
};