Skip to content

Commit d03878f

Browse files
committed
Add assertation in lcp_array_arbitrary
1 parent 032ef62 commit d03878f

File tree

1 file changed

+2
-0
lines changed

1 file changed

+2
-0
lines changed

src/string.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -242,10 +242,12 @@ pub fn suffix_array(s: &str) -> Vec<usize> {
242242
// Linear-Time Longest-Common-Prefix Computation in Suffix Arrays and Its
243243
// Applications
244244
pub fn lcp_array_arbitrary<T: Ord>(s: &[T], sa: &[usize]) -> Vec<usize> {
245+
assert!(s.len() == sa.len());
245246
let n = s.len();
246247
assert!(n >= 1);
247248
let mut rnk = vec![0; n];
248249
for i in 0..n {
250+
assert!(sa[i] < n);
249251
rnk[sa[i]] = i;
250252
}
251253
let mut lcp = vec![0; n - 1];

0 commit comments

Comments
 (0)