分詞結果放在list裡面
//基於詞的編輯距離計算
public static float levenshtein(arraylistlistfirst, arraylistlistsecond)
for (int a = 0; a <= len2; a++)
// 計算兩個字元是否一樣,計算左上的值
int temp;
for (int i = 1; i <= len1; i++) else
// 取三個值中最小的
dif[i][j] = min(dif[i - 1][j - 1] + temp, dif[i][j - 1] + 1,
dif[i - 1][j] + 1);
system.out.println("i = " + i + ", j = " + j + ", dif[i][j] = "
+ dif[i][j]);}}
// 計算相似度
float similarity = 1 - (float) dif[len1][len2]
/ math.max(listfirst.size(), listsecond.size());
system.out.println("相似度:" + similarity);
return similarity;
}
文字相似度計算 編輯距離
一 概念 編輯距離 編輯距離,又稱levenshtein距離,是指兩個字串之間,由乙個轉成另乙個所需的最少編輯操作次數。許可的編輯操作包括將乙個字元替換成另乙個字元,插入乙個字元,刪除乙個字元。如 將sailn一字轉成failing sailn failn s f 插入,刪除 sailn faili...
編輯距離演算法求文字相似度
編輯距離,又稱levenshtein距離 萊文斯坦距離也叫做edit distance 是指兩個字串之間,由乙個轉成另乙個所需的最少編輯操作次數,如果它們的距離越大,說明它們越是不同。許可的編輯操作包括將乙個字元替換成另乙個字元,插入乙個字元,刪除乙個字元。在概念中,我們可以看出一些重點那就是,編輯...
計算文字相似度
計算文字相似度 推薦2收藏 簡單講解 文字相似度計算在資訊檢索 資料探勘 機器翻譯 文件複製檢測等領域有著廣泛的應用。比如 控制,我們假設你開發了乙個微博 並且已經把世界上罵人的句子都已經收錄進了資料庫,那麼當乙個使用者發微博時會先跟罵人句子的資料庫進行比較,如果符合裡面的句子就不讓使用者發出。通常...