字串模版

2021-09-03 02:58:07 字數 1225 閱讀 8429

1.kmp

#include#include#include#include#include#include#define maxn 1000006

using namespace std;

int n,m,nex[maxn];

char s[maxn],t[maxn];

int main()

j=0;

for(int i=1;i<=m;i++)

}for(int i=1;i<=n;i++)cout《想法:利用字首自相似性,匹配t時移動s的指標位置

2.ac_automation

#include#include#include#include#include#include#include#define maxn 1000006

using namespace std;

int n,len,tr[maxn][28],e[maxn],cnt,fail[maxn];

char s[maxn],t[maxn];

void cle()

void ins()

e[j]++;

}void build()

else tr[k][i]=tr[fail[k]][i];}}

}int main()

build();

scanf("%s",s+1);int len=strlen(s+1);

int p=0,ans=0;

for(int i=1;i<=len;i++)

cout《路徑壓縮

原理:構建字典圖實現自動跳轉,構建失配指標實現多模式匹配

3.suffix_automation

#include#include#include#include#include#include#define maxn 2000006

using namespace std;

int sz,root,n,la,rs[maxn],t[maxn],a[maxn];

long long ans;

struct nodes[maxn];

char ch[maxn];

void extend(int c)

} la=np;

}void sort()

void get_r() }}

int main()

字串匹配 KMP演算法 模版

問題 給定兩個字串a b,求b在a中出現的位置。輸入 第一行為乙個字串a,長度大於等於1小於等於100000。第二行為乙個字串b,長度大於等於1小於等於1000。輸出 乙個整數,b在a中出現的位置,若b不是a的字串,輸出 1。樣例 abababc ababc ps 該 只能求出第一次匹配時的字元位置...

beetl模版for迴圈渲染字串

beetl for迴圈渲染html字串的方式,beetl if條件判斷輸出,beet自定義標籤和標籤引用,beetl html賦值,beetl渲染json,beetl注釋 變數定義,更多文件請到 beetl for迴圈輸出 beetl for輸出select option for item in l...

ES 6 模版字串

es6模板字元簡直是開發者的福音啊,解決了es5在字串功能上的痛點。第乙個用途,基本的字串格式化。將表示式嵌入字串中進行拼接。用 來界定。es5 var name nwd console.log hello name es6 const name nwd console.log hello hell...