摘要:代碼克隆檢測在代碼抄襲檢測、代碼審查、軟件更迭和錯誤檢測等方面有重要作用。為提高代碼克隆檢測的準(zhǔn)確率,結(jié)合TF-IDF及馬爾科夫模型提出了一種改進(jìn)的Simhash算法Ad-Sim。該算法首先對代碼進(jìn)行歸一化預(yù)處理;其次在Simhash計算指紋簽名的過程中使用TF-IDF計算各關(guān)鍵詞權(quán)重,并利用馬爾科夫模型優(yōu)化關(guān)鍵詞權(quán)重;最后比較待檢測代碼指紋簽名的漢明距離相似度,從而判斷待檢測代碼是否為克隆代碼。實驗結(jié)果表明:Ad-Sim算法在代碼克隆檢測上的準(zhǔn)確率及召回率相比Simhash有所提升,尤其在少量代碼的檢測準(zhǔn)確率上提升更明顯。
注:因版權(quán)方要求,不能公開全文,如需全文,請咨詢雜志社