How to count the occurrences of each letter in char array with Rust

1 Answer

0 votes
use std::collections::HashMap;

fn count_letter_occurrences(chars: &[char]) -> HashMap<char, usize> {
    let mut occurrences = HashMap::new();
    
    for &ch in chars {
        *occurrences.entry(ch).or_insert(0) += 1;
    }
    
    occurrences
}

fn main() {
    let char_array = ['r', 'u', 'r', 'c', 'd', 'c', 'e', 'f', 'e', 'r'];
    let letter_counts = count_letter_occurrences(&char_array);
    
    for (letter, count) in &letter_counts {
        println!("{}: {}", letter, count);
    }
}



/*
run:

d: 1
r: 3
e: 2
f: 1
u: 1
c: 2
     
*/
 

 



answered Mar 3, 2025 by avibootz
...