6个版本
0.2.2 | 2024年1月7日 |
---|---|
0.2.1 | 2024年1月6日 |
0.1.2 | 2024年1月5日 |
#680 in 算法
每月下载23次
11KB
178 行
KMPM
KMPM (Knuth-Morris-Pratt算法) 库。KMPM是有效的字符查询算法之一。
如果文本的长度为n,模式的长度为m,KMP算法以O(n+m)的时间进行处理
用法
创建新的Rust项目,并在Cargo.toml文件中添加kmpm依赖项。
Cargo.toml
[dependencies]
kmpm="0.2"
代码示例
main.rs
use kmpm::kmpm_str;
fn main(){
let text = "hello world !";
let pattern = "world";
let ctr = kmpm_str(text, pattern);
match ctr {
Some(cursor)=>{
println!("matched index {}",cursor)
}
None=>{
println!("\"{}\" does not match",pattern);
}
}
}
matched index 6
========================
"hello world !"
"world"
------^^^^^
|
#6