Sub:字符串系列目录&&说明
字符串 \(\text{String}\) 准备写成一个系列。
目录
KMP笔记
Manacher笔记
基本说明与常用符号
以下内容在整个 \(\text{String}\) 系列中默认生效。
基本说明
-
所有字符串的下标从 \(1\) 开始。
-
所有的实际字符串使用
\texttt
字体。如 \(s=\texttt{abac}\)。 -
所有算法名和公式内文字使用
\text
字体。如 \(\text{Manacher}\) 算法。 -
标题内不使用 \(\KaTeX\)。
常用符号
字符串相关
-
用 \(s[i]\) 表示字符串 \(s\) 的第 \(i\) 个字符。如 \(\texttt{abc}[2]=\texttt{b}\)。
-
用 \(s[l:r]\) 表示字符串下标在 \([l,r]\) 内的字符构成的子串(闭区间),\(:\) 前面没有数则默认为 \(1\),冒号后面没有数默认为字符串长度。如当 \(s=\texttt{abcde}\) 时,\(s[2:4]=\texttt{bcd}\),\(s[3:]=\texttt{cde}\),类似
python
中字符串切片的语法。 -
用 \(\lvert s \rvert\) 表示字符串 \(s\) 的长度。如 \(\lvert\texttt{aba}\rvert=3\)。
-
用 \(+\) 表示字符或字符串的连接。如 \(\texttt{ab}+\texttt{a}=\texttt{aba}\)。
-
用 \(\times\) 表示字符或字符串的重复拼接。如 \(\texttt{ab}\times3=\texttt{ababab}\),数与字符或字符串没有固定位置,\(3\times\texttt{a}\) 和 \(\texttt{a}\times 3\) 均可。
-
用 \(\operatorname{lcp}(s,t)\) 表示字符串 \(s\) 和字符串 \(t\) 的最长公共前缀。如 \(\operatorname{lcp}(\texttt{abc},\texttt{abd})=\texttt{ab}\)。
-
用 \(\operatorname{lcs}(s,t)\) 表示字符串 \(s\) 和字符串 \(t\) 的最长公共后缀。如 \(\operatorname{lcs}(\texttt{abc},\texttt{dbc})=\texttt{bc}\)。
其他符号
-
推出 \(\implies\)
-
赋值 \(\gets\)
-
不等于 \(\neq\) (博客园公式渲染问题)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】