ST homework---Find Errors about KMP
在leetcode进行练习的时候,一道题目是给定一个字符串,在字符串后添加字符返回最小长度的回文字符串的问题(详见https://leetcode.com/problems/shortest-palindrome/)中,应用到了KMP算法。
由于最初不了解算法的原理,仿照算法的代码进行编写,由于算法比较难理解,在返回上一次系数的过程中(详见KMP算法),我将数组系数直接减1,并通过了网上的验证,结果是AC。之后在进一步学习这个算法的过程中发现了问题,并为之添加了测试用例来完善问题。
由于这次发现错误是第一次对外提交,并且算法较难理解,所以印象比较深刻。
详见https://leetcode.com/discuss/36833/java-ac-code-may-help-u-another-need-more-test-cases