一、流程控制分类 流程控制方式采用结构化程序设计中规定的三种基本流程结构,即:分支结构、循环结构和顺序结构。 1、java分支结构分为两种: ①if条件分支,判断类型不是单一,只要一个分支被执行后,后边的分支不再执行,等值和区间都可以,if的使用范围大 ②switch case,匹配固定值(整形/字 ...
分类:
其他好文 时间:
2019-08-17 13:02:14
阅读次数:
94
题目 题目链接 测试得分: 100 主要算法 : 字符串KMP 题干: KMP板子题 代码 ...
分类:
其他好文 时间:
2019-08-17 12:51:53
阅读次数:
68
前言 shell 取子串的方式有点特别,你写的匹配字符串是需要从头开始匹配的,第一个匹配到了才开始匹配下一个,这个类似于python中的match的工作方式。 1,获取子串有两种方式 使用字符串匹配的方式去截取。其中匹配的方式和python中的match的工作方式很像,只是其截取的是那些 没有匹配 ...
分类:
系统相关 时间:
2019-08-15 12:57:46
阅读次数:
171
KMP算法,顾名思义,就是(看毛片)单个字符串匹配算法 KMP算法是一种改进的字符串匹配算法,由D.E.Knuth,J.H.Morris和V.R.Pratt提出的,因此人们称它为克努特—莫里斯—普拉特操作(简称KMP算法)。KMP算法的核心是利用匹配失败后的信息,尽量减少模式串与主串的匹配次数以达到 ...
分类:
编程语言 时间:
2019-08-13 22:36:02
阅读次数:
109
目的:在字符串T中查找字符串P的出现位置,预处理P字符串得到fail数组 时间复杂度:O(|P|+|T|) 自用模板: #include <iostream> #include <string.h> using namespace std; int Next[1110]; void get_Next ...
分类:
编程语言 时间:
2019-08-09 22:00:01
阅读次数:
109
Seek the Name, Seek the Fame "POJ 2752" 本题使用的算法还是KMP 最主要的片段就是前缀数组pi的理解,这里要求解的纸盒pi[n 1]有关,但是还是需要使用一个循环来依次找到前面符合的前缀(所谓符合就是可以保持既是前缀也是s的后缀的子串长度)。 include ...
分类:
编程语言 时间:
2019-08-09 13:13:20
阅读次数:
69
参考博客: "KMP算法(kuangbin)" 另讲得比较好的博客或网站: "前缀函数与 KMP 算法" "KMP算法(研究总结,字符串)" cpp const int maxn=1e5; int Next[maxn]; / 求前缀数组 / / t[0]对应的Next数组值为Next[1] / / ...
分类:
编程语言 时间:
2019-08-09 01:53:37
阅读次数:
162
前提技能: "前缀数组" 参考博客: "KMP算法(kuangbin)" cpp const int maxn=1e5; int Next[maxn]; / 求前缀数组 / / t[0]对应Next[1] / / Next[0]= 1 / void getNext(string t) { int i ...
分类:
编程语言 时间:
2019-08-09 01:13:19
阅读次数:
90
题目描述思路分析测试用例Java代码代码链接题目描述 请实现一个函数用来匹配包括'.'和'*'的正则表达式。 模式中的字符'.'表示任意一个字符,而'*'表示它前面的字符可以出现任意次(包含0次)。在本题中,匹配是指字符串的所有字符匹配整个模式。 例如,字符串"aaa"与模式"a.a"和"ab*ac... ...
分类:
其他好文 时间:
2019-08-08 13:28:03
阅读次数:
86
正则表达式: 含义:正则表达式(regular expression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。 语法:arr(对象名).replace(//) 双斜杠中间的内容就是正则表达式; 正则表达 ...
分类:
其他好文 时间:
2019-08-04 01:07:33
阅读次数:
118