第一个任务是要求用自己最擅长的语言编程读取一个TXT文本中的字符,找出每一章节中"Arthur"出现的次数和显示出程序所用的总时间。很明显的这就是一个字符串匹配问题。所以我先用一个传统的字符串比较方法来实现,为了提高效率,考虑到字符串匹配较好的算法有Brute force(暴力搜索)其预处理时间为O(0),匹配时间复杂度O(N*M);KMP的预处理时间O(M),匹配时间复杂度O(N);BM的预处理 O(N+M^2),匹配时间复杂度O(N)。因为所需处理的数据量不大,因此我选择用KMP算法来改进匹配效率。
1