- 2
- 0
- 约1.81千字
- 约 2页
- 2017-06-12 发布于北京
- 举报
Java实现字符串的匹配
广州疯狂软件学院拥有三大课程体系包括:java课程,android课程,ios课程,本月基础强化营(可先就业后付款)火热报名中,欢迎有志之士电话020者QQ544627560咨询。
假设我们有一个一定个数的字母组成字串,我给每个字母分配一个素数,从2开始,往后类推。这样A将会是2,B将会是3,C将会是5,等等。现在我遍历第一个字串,把每个字母代表的素数相乘。你最终会得到一个很大的整数,对吧?
然后--轮询第二个字符串,用每个字母除它。如果除的结果有余数,这说明有不匹配的字母。如果整个过程中没有余数,你应该知道它是第一个字串恰好的子集了。
思路总结如下:
1.定义最小的26个素数分别与字符A到Z对应。
2.遍历长字符串,求得每个字符对应素数的乘积。
3.遍历短字符串,判断乘积能否被短字符串中的字符对应的素数整除。
4.输出结果。
至此,如上所述,上述算法的时间复杂度为O(m+n),时间复杂度最好的情况为O(n)
package contcurrentandalgorithm;
/**
*
* @author Administrator
*/
public class SushuStringFind {
public static void main(String[] args
您可能关注的文档
最近下载
- 2026年郑州电力高等专科学校单招职业技能考试题库及答案解析.docx VIP
- 贵州省2025年4月高三年级适应性考试 生物试卷(含答案)原始卷.pdf
- 超级电容器课件.ppt VIP
- 中联W6015-8A塔吊说明书操作手册.pdf VIP
- 年产2000万支10ml藿香正气口服液生产实用工艺设计.pdf VIP
- 2025年宁波卫生职业技术学院单招笔试职业能力测验试题库含答案解析.docx VIP
- 年产1亿片牛黄解毒片车间工艺设计.docx VIP
- 2026年河北省高三模拟考试(一模)英语试卷(含答案解析).pdf
- 高级卫生专业技术资格考试中医肿瘤学(114)(副高级)梳理重点精析.docx VIP
- 2026年郑州电力高等专科学校单招职业技能考试题库有答案详细解析.docx VIP
原创力文档

文档评论(0)