要求:
如果数组第一个字符串元素包含了第二个字符串元素的所有字符,函数返回true。
举例,["hello", "Hello"]
应该返回true,因为在忽略大小写的情况下,第二个字符串的所有字符都可以在第一个字符串找到。
["hello", "hey"]
应该返回false,因为字符串"hello"并不包含字符"y"。
["Alien", "line"]
应该返回true,因为"line"中所有字符都可以在"Alien"找到。
样本:
mutation(["hello", "hey"])
应该返回 false.
mutation(["hello", "Hello"])
应该返回 true.
mutation(["zyxwvutsrqponmlkjihgfedcba", "qrstu"])
应该返回 true.
mutation(["Mary", "Army"])
应该返回 true.
mutation(["Mary", "Aarmy"])
应该返回 true.
mutation(["Alien", "line"])
应该返回 true.
mutation(["floor", "for"])
应该返回 true.
mutation(["hello", "neo"])
应该返回 false.
解法:
解法一:
function mutation(arr) {
arr[0]=arr[0].toLowerCase();
arr[1]=arr[1].toLowerCase();
var i=0,j=0;
while(j<arr[1].length){
if(arr[0][i]==arr[1][j]){
i=0;j++;
}else{
if(i<arr[0].length){
i++;
}else{
return false;
}
}
}
if(j==arr[1].length){
return true;
}
}
mutation(["hello", "hey"]);