闲来无事,看到别人说的面试题让取到里两个字符串最长匹配的字符串,于是就想试试,自己捣鼓了一下,方法挺笨的,就是for循环遍历,没有想到其他简便的思路,但是效果还是能实现的。
题目
再详细说一下题目:取到里两个字符串最长匹配的字符串,可能有些人不是很明白什么意思。比如现在有两个字符串:
NSString *str1 = @"qwe不重要的文字ty";
NSString *str2 = @"哈qwe这也是ty";
复制代码
其中匹配的重复的字符串内容就是qwe和ty,那么两个字符串中最长匹配的字符串就是qwe。
思路
没有想到好的方法,只能用最笨的方法:用for循环遍历。
比如两个字符串:
NSString *str1 = @"qwe不重要的文字ty";
NSString *str2 = @"哈qwe这也是ty";
复制代码
先取str1
的第一个字符q
,判断str2
是否包含q
,如果包含继续取str1
的第二个字符(即w
),与str2
中q
后面的那个字符(即w
)进行比较是否相等,以此类推直到str1
中取出的字符与str2