編集距離のライブラリ化

入力した単語と数万語の辞書とで総当りで編集距離を計算させてみたら,30秒以上掛かったので,cで書き直してライブラリ化してみた.

同じ処理で0.7秒前後まで縮まった.繰り返し使うなら,手間は掛かってもライブラリ化する価値はあるなあ.

参考にしたページ:
Ruby拡張ライブラリ作成チュートリアル
Rubyの拡張ライブラリの作り方 - アホメモ - Seesaa Wiki(ウィキ)


ただ,挙動を見ていると,編集距離ってナイーブすぎる気がする.

ぱっと思いつくのは,置き換える文字によって距離を変える(pとb,fとvの置換は距離0.7とする,母音同士の置き換えは距離0.5とする)とか脱落は追加より距離が小さい(distance(x,y)!=distance(y,x)となる可能性がある)とか.