一、题目
比较两个字符串A和B,确定A中是否包含B中所有的字符。字符串A和B中的字符都是 大写字母
样例
给出 A = “ABCD” B = “ACD”,返回 true
给出 A = “ABCD” B = “AABC”, 返回 false
二、思路
1、先将字符串转换为数组并排序
2、进行一些固定的判断,例如数组B的长度大于A的长度则返回false,两个数组都为空则返回true
3、遍历数组A,如果数组B包含当前遍历的字符,则将数组B的这个对应的字符删除
4、最后根据数组B的长度返回结果,长度为0则返回true,否则返回false
三、代码
const compareStrings = function (A, B) {
let arrA=(A.split('')).sort()
let arrB=(B.split('')).sort()
if(arrA.length<arrB.length){
return false
}
if(arrA.length===0&&arrB.length===0){
return true
}
for(var i=0;i<arrA.length;i++){
if(arrB.includes(arrA[i])){
arrB.splice(arrA[i],1)
}
}
if(arrB.length===0){
return true
}
else{
return false
}
}