find_duplicates

Function find_duplicates 

Source
pub fn find_duplicates<T>(collection: &[T]) -> Vec<T>
where T: Clone + Eq + Hash,
Expand description

Find all duplicate elements in a collection (elements that appear more than once). Each duplicate element appears exactly once in the result.

§Arguments

  • collection - A slice of items.

§Returns

  • Vec<T> - A vector containing one instance of each duplicate element.

§Examples

use lowdash::find_duplicates;
let numbers = vec![1, 2, 2, 3, 3, 4];
let result = find_duplicates(&numbers);
assert_eq!(result, vec![2, 3]);
use lowdash::find_duplicates;
let words = vec!["apple", "banana", "apple", "cherry", "banana"];
let result = find_duplicates(&words);
assert_eq!(result, vec!["apple", "banana"]);
use lowdash::find_duplicates;

#[derive(Debug, Clone, PartialEq, Eq, Hash)]
struct Person {
    name: String,
    age: u32,
}

let people = vec![
    Person { name: "Alice".to_string(), age: 25 },
    Person { name: "Bob".to_string(), age: 30 },
    Person { name: "Alice".to_string(), age: 25 },
];

let result = find_duplicates(&people);
assert_eq!(result, vec![Person { name: "Alice".to_string(), age: 25 }]);