Leetcodeのアルゴリズムは毎日練習します.
2668 ワード
初めてJavascriptを使ってLeetcodeのアルゴリズムを作ってみました.三時間もやって、やっと処女作を完成しました.ほぼ血を吐きそうです.ここには無数のものがあります.原文のタイトルは、Input:dict=[[cat],[bat],[rat]]sentence=[the cattle was rattled by the battery]Output:[the cat was rat by the bat]解題の考え方は、dictあいまいな内容に従ってセットされます.センターの中のすべての単語を探し出して、dictにこの単語が含まれていないなら、この単語を一つのコンテナarrに預けて、dictにこの単語が含まれているなら、センターの同じ位置の単語をdictの中のその単語に置き換えると、出力結果が問題に合うことが保証されます.
コードは以下の通りです
コードは以下の通りです
var replaceWords = function(dict, sentence) {
var result=[];
var newarr={};
for(var i=0;ivar j=sentence.indexOf(dict[i].toString());
if(j>-1){
newarr[j]=dict[i].toString();
}
}
for(var key in newarr){
result.push(newarr[key])
}
dict=result; // dict
var newStr=sentence.split(" ");
var arr = [];
var s=0;
for(var i=0;iif(newStr[i].indexOf(dict[s])>-1){
arr.push(dict[s]); // arr
s++;
}
else{
arr.push(newStr[i]);// , arr
}
//return arr;
}
return arr.join(" "); //
}
var dict=["cat", "bat", "rat"];
var sentence="the cattle was rattled by the battery";
console.log(replaceWords(dict,sentence));