我有一個單元格數組字典,其中包含很多單詞(約15000)。優化許多單詞Levenshtein距離的速度
我想爲所有的單詞對計算函數strdist
(計算Levenshtein距離)。我嘗試了兩種方式,但都很慢。什麼是更有效的解決方案?
這是我的代碼(dict_keys是長度爲m的我的單元陣列):
1)
matrix = sparse(m,m);
for i = 1:m-1;
matrix(i,:) = cellfun(@(u) strdist(dict_keys{i},u), dict_keys);
end
2)
matrix = sparse(m,m);
for i = 1:m-1;
for j = i+1:m
matrix(i,j) = strdist(dict_keys{i},dict_keys{j});
end
end
功能,內嵌的源代碼,並使用一個外循環遍歷所有'r'(函數的第一個輸入)? – Divakar 2014-12-03 14:58:02