ICode9

精准搜索请尝试: 精确搜索
  • 【元胞自动机】元胞自动机之模拟HIV传染【Matlab 169期】2021-02-06 14:57:04

    一、简介 1、模型介绍 元胞自动机就是类似于一个系统,各个单元,即元胞都有联系,但整体的系统又对各个小的单元产生影响,这影响便可定义为规则。而我们的目的就是找到这些规则来进行预测未来系统的发展。(通过计算机的计算,来模拟一个复杂的自然过程) 元胞自动机是一种时间、空间、

  • 【元胞自动机】基于matlab元胞自动机模拟HIV传染【含Matlab源码 236期】2021-02-06 14:01:04

    一、简介 1、模型介绍 元胞自动机就是类似于一个系统,各个单元,即元胞都有联系,但整体的系统又对各个小的单元产生影响,这影响便可定义为规则。而我们的目的就是找到这些规则来进行预测未来系统的发展。(通过计算机的计算,来模拟一个复杂的自然过程) 元胞自动机是一种时间、空间、

  • 【元胞自动机】基于matlab元胞自动机之晶体生长【含Matlab源码 232期】2021-02-06 09:30:29

    一、简介 1.元胞 元胞又可称为单元。或基元,是元胞自动机的最基本的组成部分。元胞分布在离散的一维、二维或多维欧几里德空间的晶格点上。 每一个元胞都有一个状态,例如下方中间的元胞状态是有一只小虫子,其他元胞的状态是没有小虫子。但如果虫子移动了,那么就是随着时间的推移,

  • AC自动机学习笔记2021-02-03 14:02:27

    这里给三个板子做一个总结 简单版 AC自动机就是KMP+Trie,fail指针在多模式串之间跳跃来进行匹配。 fail指针有一种很妙的写法: inline void bfs(){ register int i,tot; for(i=0;i<26;i++)if(f[0].son[i]) q.push(f[0].son[i]); while(!q.empty()){ now=q.front();q.pop();

  • AC自动机2021-01-30 08:33:56

    AC自动机 其实就是 Trie + kmp...... AC自动机常适用于多模式串匹配中,效率和KMP处理单模式串匹配相当 解决的问题诸如: she,he,say,shr,her 以上哪些模式串在文本串 yasherhs 中出现过 概述 首先对这些模式串建一棵trie树: 然后对每个节点求一个next数组 这里对next数组重新定义一下:对

  • CF710F String Set Queries AC自动机 二进制分组2021-01-19 09:04:42

    题意: 戳这里 分析: 字符串题要求强制在线,进行删除,插入,匹配 这里提供三种做法: 根号分治 对于这类字符串匹配问题,我们能直接想到的暴力做法就是建 Trie,或者直接 KMP, 但是 Trie 空间复杂度不太对劲,KMP 时间复杂度不太对劲,那就把两种做法合并一下,对于长度大于 \(\sqrt s\) 的直接暴

  • 模板汇总2021-01-18 23:02:55

    模板汇总 知识点还学得不够,持续补充ing~ 注:某些板子由于没有纯板子,需要删掉一些后续处理才能用(例如缩点和圆方树) 代数 矩阵乘法 矩阵快速幂 高斯消元 矩阵求行列式(任意模数) Matrix-Tree 定理 NTT FWT 子集卷积 数论 BSGS 拓展 BSGS

  • 数据结构与算法:Aho‐Corasick自动机2021-01-15 23:59:29

    Aho‐Corasick自动机 阅读报告 作者: Wenretium 注意: 文章修改自本人《数据结构与算法》课程作业,图文全部为本人原创,仅供参考。欢迎一起学习探讨٩( ‘ω’ )و 能帮助到你的话请点个赞夸夸再走哦 一、算法简介 Aho-Corasick算法是多模式匹配中的经典算法,该算法通过构造AC自动

  • [学习笔记]回文自动机(PAM)2021-01-10 16:04:00

    〇、测试链接 传送门 壹、定义 其实 \(\tt PAM\) 个人感觉是 \(\tt SAM\) 和 \(\tt AC\) 自动机的组合,用到的大部分思想来自于 \(\tt AC\) 自动机以及 \(\tt kmp\),但是采用的建立方式是 \(\tt SAM\) 的增量法,即来了一个点就在原来的基础上加入一个点. 对于一个 \(\tt PAM\) 的每个

  • 「笔记」AC 自动机2021-01-07 21:32:05

    写在前面 这篇文章的主体是在没网的悲惨状况下完成的。 前置知识:Trie 树,DFA,KMP 字符串匹配算法。 请务必深刻理解! 引入 给定一个模式串 \(s\),\(n\) 个匹配串 \(t_1\sim t_n\),求在模式串中各文本串分别出现的次数。 \(1\le |s|\le 10^6\),\(\sum |t_i|\le 10^6\)。 若 \(n = 1\),可

  • 「笔记」后缀自动机2021-01-02 22:32:21

    写在前面 遇到某些看做很扯的定义时暂时不要考虑正确性,应用之类,只需记住就好,这些东西在下文中一般都有详细介绍。 前置知识 确定有限状态自动机 (DFA) - OI Wiki 个人理解(没那么严谨的定义): 一个确定有限状态自动机 (DFA) 是一个边上带有字符的有向图。 节点被称为 状态,边被称为 转

  • 【学习笔记】回文自动机2021-01-02 10:30:41

    壹、什么是回文自动机 节点信息 其实就是 k m p \tt kmp kmp 一样的东西……这个自动机里包含所有回文子串。 自动机边

  • AC自动机---好东西2020-12-31 21:04:51

    一.前言 想学AC自动机,请先学会KMP和Trie树。 二.正文 AC自动机到底是什么呢?\(Trie+KMP\) 我们的AC自动机和KMP有什么区别呢? AC自动机可以同时匹配很多个模式串,而KMP只可以匹配一个模式串。 那么我们来看一道例题:传送门 我们可以想到对于每一个字符串进行一次KMP,然鹅会TLE。 AC自

  • [学习笔记] 后缀自动机2020-12-12 11:34:39

    其实我后缀自动机在 \(2020/2\) 的时候就会了,刷了很多题,但是一直没有搞懂原理,现在补一发关于后缀自动机原理的博客。我尽量节约时间,把最重要的东西写的尽量好理解。 我是看这位巨佬的博客学的,所以会有一些重合的地方,但是我会按照我自己的理解写(仔细看你会发现我们的表述相差很大),争

  • 【字符串】后缀自动机2020-12-10 17:04:40

    struct SAM { static const int MAXN = 1e6 + 10; struct State { int nxt[26]; int len; int lnk; } st[2 * MAXN]; int siz; int lst; void Init() { siz = 0; lst = 0; ms(st[0].nxt);

  • 【字符串】AC自动机2020-12-02 20:34:04

    struct ACM { static const int MAXN = 1e6 + 10; int ch[MAXN][26], fail[MAXN]; int cnt; int R[MAXN]; void Init() { ms(ch[0]), fail[0] = 0; cnt = 0; } int NewNode() { int o = ++cnt; ms(ch[o]);

  • 形式语言与自动机:实验二——DFA识别句子2020-11-22 11:58:38

    一、实验目的: 加深对DFA工作原理的理解。 二、实验内容: 1.设计固定DFA。也就是说用if-then-else(一般用来实现字母表中只有两个字母的情况)、switch(大于两个字母的情况)、for(用于控制输入字符串,长度为n的字符串,for循环n次)等语句表示DFA。一个函数定义一个DFA; 2.设计文件形式存储

  • 自动机(hdu2222模板)2020-11-14 21:04:57

    给定n个长度不超过50的由小写英文字母组成的单词准备查询,以及一篇长为m的文章,问:文中出现了多少个待查询的单词。多组数据。 输入格式 第一行一个整数t,表示数据组数; 对于每组数据,第一行一个整数n,接下去n行表示n个单词,最后一行输入一个字符串,表示文章。 输出格式 对于每组数据,输出一

  • SP1812 LCS2 - Longest Common Substring II 后缀自动机,多个串的lcs2020-11-06 19:34:11

    SP1812 LCS2 - Longest Common Substring II 题意 给出一些字符串,求出他们的最长公共子串。 分析 对其中一个字符串建后缀自动机,用其他字符串在自动机上跑,用一个数组对每个状态记录一个能匹配的最长的长度,最后对所有字符串跑自动机后维护的匹配的最长长度取min,再对所有状态取max,即

  • AC自动机入门和简单应用2020-10-31 09:04:00

    前言 前置知识: Trie的构建和简单应用 KMP的思想 概念 构建 AC自动机实际上是在Trie中加入了fail指针的概念。 设\(S(i)\)表示节点\(i\)表示的字符串,\(\mathrm{Suf}(S)\)表示字符串\(S\)的所有后缀(除去自己)组成的集合,那么一个\(\mathrm{fail}\)指针代表的内容用形式化表示就是: \[

  • 正则表达式性能优化的探究2020-10-29 23:03:32

    一.背景   前文的String字符串性能优化的探究中的第3点讲述了Split() 方法使用了正则表达式实现了其强大的分割功能,而正则表达式的性能是非常不稳定的,使用不恰当会引起回溯问题。那么今天详细探讨下正则表达式。   正则表达式是计算机科学的一个概念,很多语言都实现了它。正则

  • AC自动机--P3808 【模板】AC自动机(简单版)2020-09-30 08:00:22

    AC自动机是建立在KMP算法和Trie树的基础上 一、主要步骤 将所有的模式串构建成一个Trie树 对Trie树上的所有节点求失配指针(即从根节点出发,一个串是另一个串的后缀,画图比较好理解) 利用失配指针对主串进行匹配 代码,附注释,应该会好理解一些: 1 #include <iostream> 2 #include <c

  • AC 自动机2020-09-18 18:33:13

    概述 AC 自动机是 以 Trie 的结构为基础 ,结合 KMP 的思想 建立的。 简单来说,建立一个 AC 自动机有两个步骤: 基础的 Trie 结构:将所有的模式串构成一棵 Trie。 KMP 的思想:对 Trie 树上所有的结点构造失配指针。 然后就可以利用它进行多模式匹配了。 字典树构建 AC 自动机在初始时

  • 后缀自动机的各种应用2020-08-05 22:34:08

    检查字符串是否出现 给出一个文本串$T$和多个模式串$P$,检查$P$是否为$T$的一个子串 先给文本串$T$建立后缀自动机,然后沿根节点依次按照$P$的字符转移,如果在中途转移无法进行,则$P$不是$T$的子串,否则就是。 求本质不同子串个数 给出字符串$S$,求$S$的本质不同子串个数 给字符串$S

  • 「刷题笔记」AC自动机2020-07-24 09:34:07

    Keywords Research 板子题,同luoguP3808,不过是多测。 然后多测不清空,\(MLE\)两行泪。 板子放一下 #include<bits/stdc++.h> using namespace std; #define ll int #define ull unsigned long long #define ZZ_zuozhe int main() #define S 1000010 ll n; char tmp[S]; ll vcn=0; s

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有