不用双层循环的解法
var stringMatching = function(words) {
var wordsString = words.toString('')
var resultArr = []
words.forEach(element => {
if (wordsString.indexOf(element) !== wordsString.lastIndexOf(element)) {
resultArr.push(element)
}
});
return resultArr
};
toString(), 用逗号隔开,不要不隔,不然这个的尾和另一个头连上,也可能成
mass,as,hero,superhero
(二)split 分割 或者
一个字符串想用,或者 . 分割
"9001,discuss.leetcode.com".split(/[.,]/)
结果:
["9001", "discuss", "leetcode", "com"]
(三)
var subdomainVisits = function(cpdomains) {
var result = {}
cpdomains.forEach((element) => {
let count = +element.split(" ")[0]
let str = element.split(" ")[1];
result[str] = result[str] ? result[str] + count : count
while (str.indexOf('.') > -1) {
str = str.substr(str.indexOf('.') + 1)
result[str] = result[str] ? result[str] + count : count
}
})
return result
};
var words = ["900 google.mail.com", "50 yahoo.com", "1 intel.mail.com", "5 wiki.org"]
var res = subdomainVisits(words)
console.log(res)
while 循环 判断是否有 .,有就解析 substr
(四)求出现最多的单词
统计完每个单词出现的个数,这样比较
for (let key in wordsCount) {
if (wordsCount[key] > max && banned.indexOf(key) === -1) {
max = wordsCount[key]
maxWord = key
}
}
return maxWord