var t0 = [ "site", "how", "social", "create", "membership"],
t1 = [ "forum", "site", "social", "membership", "networking"],
t2 = ["social", "network", "create", "how", "free"],
t3 = ["social", "membership", "site", "website", "make"] ;
function levenshteinDistance (a, b) {
if (!a.length) return b.length;
if (!b.length) return a.length;
return Math.min(
levenshteinDistance(a.slice(1), b) + 1,
levenshteinDistance(b.slice(1), a) + 1,
levenshteinDistance(a.slice(1), b.slice(1)) + (a[0] !== b[0] ? 1 : 0)
);
}
console.log(levenshteinDistance (t0, t1));
console.log(levenshteinDistance (t0, t2));
.linkDistance(levenshteinDistance (t0, t1))
レーベンシュタイン距離関数の前に与えられたデータに従って動的距離を提供する関数が必要です。私の機能に従って、動的なlinkDistanceを作成したいと思います。同じページにレーベンシュタイン距離関数を入れています。私はここで新しいので、間違っていたら確認してください。必要に応じて、質問にお答えします。