算法演示
正在载入算法资源…
关键语句随步骤高亮;代码按当前输入生成。
使用说明
下标均从 0 开始。步骤在浏览器本地计算,支持拖动进度及回退;复制或下载的代码可在对应语言环境运行。辅助数组与逻辑节点编号用于展示算法结构。
概述
字符串匹配可视化,支持朴素匹配、KMP 匹配。可自定义数据、逐步播放、暂停回退,并复制或下载 Python、JavaScript、Java、C、C++、Go 代码。
字符串匹配可视化
输入数据后自动生成步骤,点击播放或使用上一步、下一步查看过程。拖动进度条可直接定位,右侧代码同步标出关键语句。
- 朴素匹配:输出全部匹配起点,允许重叠匹配;下标按 Unicode 码点计算,不是 UTF-16 单元。模式不能为空。最坏时间 O(nm)。
- KMP 匹配:先构建前缀表,再在线性扫描中复用匹配信息;输出全部起点并允许重叠。总时间 O(n+m),额外空间 O(m)。下标按 Unicode 码点计算。
示例代码使用固定上限数组与整数,节点编号模拟指针。代码展示与下载不执行用户脚本;输入在本地处理。