下面是我写的答案,不过没有通过测试。
def faster_autocorrect(user_word, valid_words, diff_function, limit):
"""A memoized version of the autocorrect function implemented above."""
# BEGIN PROBLEM EC2
"*** YOUR CODE HERE ***"
mf = memo(diff_function)
similar_word = min(valid_words, key=lambda w:mf(user_word, w,limit))
if mf(user_word, similar_word,limit) > limit:
return user_word
else :
return similar_word
# END PROBLEM EC2
测试结果: