基於詞的編輯距離文字相似度計算

2021-07-25 10:00:44 字數 684 閱讀 4965

分詞結果放在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收藏 簡單講解 文字相似度計算在資訊檢索 資料探勘 機器翻譯 文件複製檢測等領域有著廣泛的應用。比如 控制,我們假設你開發了乙個微博 並且已經把世界上罵人的句子都已經收錄進了資料庫,那麼當乙個使用者發微博時會先跟罵人句子的資料庫進行比較,如果符合裡面的句子就不讓使用者發出。通常...