How to Remove Duplicates in a Vector in Rust - Step by Step Examples
How to Remove Duplicates in a Vector in Rust ?
Answer
To remove duplicates from a vector in Rust, you can use the dedup
method or create a new vector with unique elements using a HashSet
.
✐ Examples
1 Remove All Duplicates from a Vector
In this example,
- We start by importing the
std::collections::HashSet
to use theHashSet
collection type. - We then create a vector named
vec
with some integer values, including duplicates. - Next, we create a
HashSet
from the vector to filter out all duplicate elements. AHashSet
only keeps unique elements. - We then convert the
HashSet
back to a vector using theinto_iter
andcollect
methods. This gives us a new vector containing only the unique elements. - Finally, we print the new vector to standard output to see the result.
Rust Program
use std::collections::HashSet;
fn main() {
let vec = vec![1, 2, 2, 3, 4, 4, 4, 5, 6, 6];
let set: HashSet<_> = vec.into_iter().collect();
let unique_vec: Vec<_> = set.into_iter().collect();
println!("Vector after removing all duplicates: {:?}", unique_vec);
}
Output
Vector after removing all duplicates: [1, 2, 3, 4, 5, 6]
2 Remove Consecutive Duplicates in a Vector
In this example,
- We start by creating a mutable vector named
vec
with some integer values, including consecutive duplicates. - We then use the
dedup
method onvec
. This method removes consecutive duplicate elements from the vector, modifying it in place. - The
dedup
method does not require any arguments and returns()
. - Finally, we print the modified vector to standard output to see the result.
Rust Program
fn main() {
let mut vec = vec![1, 2, 2, 3, 4, 4, 4, 5, 6, 6];
vec.dedup();
println!("Vector after removing consecutive duplicates: {:?}", vec);
}
Output
Vector after removing consecutive duplicates: [1, 2, 3, 4, 5, 6]
Summary
In this tutorial, we learned How to Remove Duplicates in a Vector in Rust language with well detailed examples.
More Rust Vectors Tutorials
- How to create an Empty Vector in Rust ?
- How to Initialize a Vector in Rust ?
- How to Get Length of a Vector in Rust ?
- How to create a Vector of Size N in Rust ?
- How to create a Vector of Numbers from 1 to N in Rust ?
- How to create a Vector of Integers in Rust ?
- How to create a Vector of Strings in Rust ?
- How to create a Vector of Empty Vectors in Rust ?
- How to Access Items in a Vector in Rust ?
- How to get Item in a Vector at a Specific Index in Rust ?
- How to get First Item in a Vector in Rust ?
- How to get Last Item in a Vector in Rust ?
- How to Iterate Over a Vector in Rust ?
- How to Iterate Over a Vector with Index in Rust ?
- How to Iterate Over a Vector in Reverse Order in Rust ?
- How to check if a Vector is Empty in Rust ?
- How to check if a Vector is Not Empty in Rust ?
- How to get Sub Vector in Rust ?
- How to get the Index of Specified Item in a Vector in Rust ?
- How to check if a Specific Item is present in the Vector in Rust ?
- How to check if a Vector contains all the items of Another Vector in Rust ?
- How to count the Number of Occurrences of Specific Item in the Vector in Rust ?
- How to find the Item with Maximum Number of Occurrences in a Vector in Rust ?
- How to find the Item with Minimum Number of Occurrences in a Vector in Rust ?
- How to Sort a Vector in Rust ?
- How to Sort a Vector in Ascending Order in Rust ?
- How to Sort a Vector in Descending Order in Rust ?
- How to create a Two Dimensional Vector in Rust ?
- How to Iterate over a Two Dimensional Vector in Rust ?
- How to create a Three Dimensional Vector in Rust ?
- How to Copy a Vector in Rust ?
- How to Split a Vector in Rust ?
- How to Join Vectors in Rust ?
- How to Append an Item to a Vector in Rust ?
- How to Insert an Item at Specific Index in a Vector in Rust ?
- How to Append a Vector to another Vector in Rust ?
- How to Concatenate Two Vectors in Rust ?
- How to check if Two Vectors are Equal in Rust ?
- How to check if Two Vectors have Same Items (Regardless of Order) in Rust ?
- How to Convert a Vector of Integers to a Vector of Strings in Rust ?
- How to Convert a Vector of Strings to a Vector of Integers in Rust ?
- How to Convert a Vector of Floats to a Vector of Strings in Rust ?
- How to Convert a Vector of Strings to a Vector of Floats in Rust ?
- How to Reverse a Vector in Rust ?
- How to Shuffle a Vector in Rust ?
- How to Slice a Vector in Rust ?
- How to get First N Items from a Vector in Rust ?
- How to get Last N Items from a Vector in Rust ?
- How to Rotate Items in a Vector in Rust ?
- How to Filter Items of a Vector based on a Condition in Rust ?
- How to Remove Duplicates in a Vector in Rust ?
- How to Remove Item at a Specific Index from a Vector in Rust ?
- How to Remove Specific Item from a Vector in Rust ?
- How to Remove Items from Vector based on a Condition in Rust ?
- How to Sort a String Vector in Dictionary Order in Rust ?
- How to Concatenate Strings in Vector in Rust ?
- How to create a Vector of Vectors in Rust ?