Alex_McAvoy的博客

I'm not there,I'm not die.

排序:
默认
按更新时间
按访问量
RSS订阅

字符串处理 —— 概述

【概述】 在 ACM 中,常用的字符串算法不多,主要有:模拟与暴力、KMP、manacher、字典树、AC 自动机、Hash 等等。 除算法外,C++ 封装好的 string 类也十分重要,其有大量的内置函数,可以对字符串进行灵活的处理。 【算法】 模拟与暴力:点击这里 回文串相关:点击...

2019-03-25 19:01:45

阅读数 190

评论数 0

字符串处理 —— 模拟与暴力

【概述】 在某些题目中,需要对字符串进行处理,不需要很复杂的算法,只需要按照题意进行模拟或暴力枚举即可得出答案。 【例题】 1.简单模拟 Minimum Ternary String(CF-1009B):点击这里 Delete from the Left(CF-1005B):点击这里 ...

2019-03-12 15:04:01

阅读数 111

评论数 0

字符串处理 —— AC 自动机

【概述】 KMP 算法用于解决长文本的单模板匹配问题,字典树用于解决单个单词(短文本)多模板匹配问题,而 AC 自动机用于解决的是长文本的多模板匹配问题,其是以 trie 树的结构为基础,结合 KMP 的思想建立的。 长文本的多模式匹配就是给出多个模式串 P1,P2,P3...,Pm,求出所有...

2019-03-06 13:43:17

阅读数 124

评论数 0

字符串处理 —— 最大最小表示法

【概述】 最大最小表示法用于解决字符串的同构问题,其在复杂度为 O(n) 的时间内求出一个字符串的所有同构串中字典序最大(小)的串的起始位置。 应用: 给出 n 个循环字符串判断有多少不同字符串:逐个用最大(小)表示法表示,然后加入 set 去重 循环字符串所有同构串中字典序最大(小)的表...

2019-02-27 19:05:16

阅读数 72

评论数 0

字符串处理 —— 单模式匹配

【问题形式】 文本(Text):长度为 n 的数组 T[1..n] 模式(Pattern):一个长度为 m 且 m≤n 的数组 P[1..m] 有效位移/匹配点(Valid Shift):0≤s≤n-m,且 T[s+1..s+m] = P[1..m],即对 1≤j≤m,有 T[s+j] = ...

2019-02-25 20:26:57

阅读数 111

评论数 0

字符串处理——字典树

【概述】 字典树,又称为单词查找树,Tire 树,是一种树形结构,它是哈希树的变种。 字典树与字典很相似,当要查一个单词是不是在字典树中,首先看单词的第一个字母是不是在字典的第一层,如果不在,说明字典树里没有该单词,如果在就在该字母的孩子节点里找是不是有单词的第二个字母,没有说明没有该单词,有...

2019-02-19 18:31:57

阅读数 98

评论数 0

字符串处理 —— 回文串相关

【回文串】 回文串,就是一个正读与反读都一样的字符串,比如:abcdcba、zxccxz 等 常见的回文串算法有:求字符串中最长回文串、判断一个字符串是否为回文串、在字符中添加/删除一个字符后是否为回文串等 回文串的判断:点击这里 添加/删除字符后是否为回文串:点击这里 求最长回文子串:...

2019-02-03 13:08:55

阅读数 124

评论数 0

提示
确定要删除当前文章?
取消 删除