描述:
比较两个字符串A和B,确定A中是否包含B中所有的字符。字符串A和B中的字符都是 大写字母
注意事项
在 A 中出现的 B 字符串里的字符不需要连续或者有序。
样例:
代码实现:
给出 A = "ABCD"
B = "ACD"
,返回 true
给出 A = "ABCD"
B = "AABC"
, 返回 false
public boolean compareStrings(String A, String B) {
// write your code here
char ch_A[] = A.toCharArray();//获得a中的字符数组
char ch_B[] = B.toCharArray();//获得b中的字符数组
int len_A = ch_A.length;
int len_B = ch_B.length;
int a[] = new int[len_A];//记录a中每个字符出现的次数
int b[] = new int[len_B];//记录b中每个字符出现的次数
if(len_A<len_B){//b中的字符数不可能小于a中的字符数
return false;
}
for(int i=0;i<ch_B.length;i++){
int ca = getCharNumber(ch_A,ch_B[i]);
int cb = getCharNumber(ch_B,ch_B[i]);
if(ca<cb){
return false;
}
}
return true;
}
//计算字符ch在数组str中的个数
private int getCharNumber(char str[],char ch){
int len = str.length;
int count=0;
for(int i = 0; i< len;i++){
if(str[i]==ch){
count++;
}
}
return count;
}