标签:os strong 问题 sp on c 算法 r as
最简单,最纯粹的二分查找问题,应该是用循环的方法去做的话会得分较高。
举个例子:字符串“yactysa”中第一个出现了两次的字符串是‘y‘
解法1: O(n^2)的效率。也就是最简单的两重循环。
解法2: 更好也更多被采用的,hash方法。定义一个256的数组就可以了。
详述题目:给出一个文本输入,要求输出所有包含子串“your”的行,不考虑大小写。并且将行按照your出现的次数由高到低先后输出。
涉及了子串问题,很容易想到的是KMP算法。但"your” 中每个字母都不重复,所以可以简化判断,如果遇到不相同的字符,则直接将当前位置与子串下标为0的字符进行比较。
标签:os strong 问题 sp on c 算法 r as
原文地址:http://my.oschina.net/gongshang/blog/312198