人们在英文字典中查找某个单词的时候可能不知道该单词的完整拼法,而只知道该单词的一个错误的近似拼法,这时人们可能陷入困境,为了查找一个单词而浪费大量的时间。带有模糊查询功能的电子字典能够从一定程度上解决这一问题:用户只要输入一个字符串,电子字典就返回与该单词编辑距离最小的几个单词供用户选择。
字符串 a 与字符串 b 的编辑距离是指:允许对 a 或 b 串进行下列“编辑”操作,将 a 变为 b 或 b 变为 a,最少“编辑”次数即为距离。
-
删除串中某个位置的字母;
-
添加一个字母到串中某个位置;
-
替换串中某一位置的一个字母为另一个字母。
JSOI 团队正在开发一款电子字典,你需要帮助团队实现一个用于模糊查询功能的计数部件:对于一个待查询字符串,如果它是单词,则返回 −1;如果它不是单词,则返回字典中有多少个单词与它的编辑距离为 1。