1 个不稳定版本
0.1.0 | 2020年4月23日 |
---|
#6 in #suffix-array
8KB
185 行代码(不包括注释)
后缀数组
本包提供与后缀数组相关的常用功能。它还使用了 LCP 数组附加功能。
let s = String::from("azaza");
let sa = array::new(s.as_str());
let subs = sa.distinct_sub();
let s = String::from("azaza");
let sa = array::new(s.as_str());
assert_eq!(9, sa.distinct_sub_count());
let s = String::from("azaza");
let sa = array::new(s.as_str());
assert_eq!(15, sa.sub_count());
let s = String::from("abracadabra");
let sa = array::new(s.as_str());
let lrs = sa.longest_repeated_substr();
assert_eq!(1, lrs.len());
assert_eq!("abra", str::from_utf8(&lrs[0]).unwrap());