mirror of
https://github.com/mii443/esaxx-rs.git
synced 2025-12-03 11:08:27 +00:00
Slightly rustier get_counts and get_buckets.
This commit is contained in:
34
src/sais.rs
34
src/sais.rs
@@ -5,26 +5,30 @@ fn has_high_bit(j: usize) -> bool {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn get_counts(t: &StringT, c: &mut Bucket) {
|
fn get_counts(t: &StringT, c: &mut Bucket) {
|
||||||
for item in c.iter_mut() {
|
c.iter_mut().map(|c| *c = 0).count();
|
||||||
*item = 0;
|
t.iter()
|
||||||
}
|
.map(|character| c[*character as usize] += 1)
|
||||||
for character in t {
|
.count();
|
||||||
c[*character as usize] += 1;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fn get_buckets(c: &Bucket, b: &mut Bucket, k: usize, end: bool) {
|
fn get_buckets(c: &Bucket, b: &mut Bucket, _k: usize, end: bool) {
|
||||||
let mut sum = 0;
|
let mut sum = 0;
|
||||||
if end {
|
if end {
|
||||||
for i in 0..k {
|
b.iter_mut()
|
||||||
sum += c[i];
|
.enumerate()
|
||||||
b[i] = sum;
|
.map(|(i, b_el)| {
|
||||||
}
|
sum += c[i];
|
||||||
|
*b_el = sum;
|
||||||
|
})
|
||||||
|
.count();
|
||||||
} else {
|
} else {
|
||||||
for i in 0..k {
|
b.iter_mut()
|
||||||
b[i] = sum;
|
.enumerate()
|
||||||
sum += c[i];
|
.map(|(i, b_el)| {
|
||||||
}
|
*b_el = sum;
|
||||||
|
sum += c[i];
|
||||||
|
})
|
||||||
|
.count();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user