package editdistance func WagnerFisher(a, b string) int { if len(a) == 0 { return len(b) } if len(b) == 0 { return len(a) } if a[0] == b[0] { return WagnerFisher(a[1:], b[1:]) } return 1 + min(WagnerFisher(a[1:], b), WagnerFisher(a, b[1:]), WagnerFisher(a[1:], b[1:])) }