To rotate elements in an array using Rust, you can implement a custom rotation function that shifts elements by a specified number of positions.
In this example,
intVector
containing integers.rotate_array
function that shifts elements by a specified number of positions.fn rotate_array(array: &mut Vec<i32>, positions: usize) {
let n = array.len();
let p = positions % n;
array.reverse();
array[0..p].reverse();
array[p..].reverse();
}
fn main() {
let mut int_vector = vec![1, 2, 3, 4, 5];
let positions = 2;
rotate_array(&mut int_vector, positions);
println!("Rotated Vector: {:?}", int_vector);
}
Rotated Vector: [4, 5, 1, 2, 3]
In this example,
str_vector
containing strings.rotate_array
function that shifts elements by a specified number of positions.fn rotate_array(array: &mut Vec<String>, positions: usize) {
let n = array.len();
let p = positions % n;
array.reverse();
array[0..p].reverse();
array[p..].reverse();
}
fn main() {
let mut str_vector = vec!["apple", "banana", "cherry", "date", "fig"].into_iter().map(String::from).collect();
let positions = 3;
rotate_array(&mut str_vector, positions);
println!("Rotated Vector: {:?}", str_vector);
}
Rotated Vector: ["date", "fig", "apple", "banana", "cherry"]
In this tutorial, we learned How to Rotate Elements in an Array in Rust language with well detailed examples.