fn shift_left(mut vec: Vec<i32>) -> Vec<i32> {
if vec.is_empty() {
return vec;
}
let first = vec.remove(0); // remove the first element
vec.push(first); // optional: append it to the end
vec
}
fn main() {
let arr = vec![0, 1, 2, 3, 4, 5];
println!("Original: {:?}", arr);
let shifted = shift_left(arr);
println!("Shifted: {:?}", shifted);
}
/*
run:
Original: [0, 1, 2, 3, 4, 5]
Shifted: [1, 2, 3, 4, 5, 0]
*/