How to find an element that appears once in an array of elements that appears three times in Rust

1 Answer

0 votes
use std::collections::HashMap;

fn find_element_that_appears_once_in_array(arr: &[i32]) -> i32 {
    let mut map = HashMap::new();

    for x in arr {
        *map.entry(x).or_insert(0) += 1;
    }

    for (key, value) in map.iter() {
        if *value == 1 {
            return **key;
        }
    }

    -1
}

fn main() {
    let arr = [3, 5, 5, 2, 7, 3, 2, 8, 8, 3, 2, 5, 8];
    
    println!("{}", find_element_that_appears_once_in_array(&arr));
}




/*
run:

7

*/

 



answered Jul 8, 2024 by avibootz
...