匹配两个字符串中的相同部分 并找出最长的相同部分

这是一个关于找出两个字符串中最长共同子串的算法问题。通过遍历每个字符串的字符,逐个比较并记录相同部分,最终找到最长的匹配字符串。文章提供了一种基于循环的简单实现方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

闲来无事,看到别人说的面试题让取到里两个字符串最长匹配的字符串,于是就想试试,自己捣鼓了一下,方法挺笨的,就是for循环遍历,没有想到其他简便的思路,但是效果还是能实现的。

题目

再详细说一下题目:取到里两个字符串最长匹配的字符串,可能有些人不是很明白什么意思。比如现在有两个字符串:

NSString *str1 = @"qwe不重要的文字ty";
NSString *str2 = @"哈qwe这也是ty";
复制代码

其中匹配的重复的字符串内容就是qwety,那么两个字符串中最长匹配的字符串就是qwe

思路

没有想到好的方法,只能用最笨的方法:用for循环遍历。
比如两个字符串:

NSString *str1 = @"qwe不重要的文字ty";
NSString *str2 = @"哈qwe这也是ty";
复制代码

先取str1的第一个字符q,判断str2是否包含q,如果包含继续取str1的第二个字

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值