Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,845 questions

51,766 answers

573 users

How to find first and last positions of an element in a sorted array in Rust

1 Answer

0 votes
fn find_first_and_last_position(arr: &[i32], n: i32) -> (Option<usize>, Option<usize>) {
    let mut first = None;
    let mut last = None;

    for (i, &val) in arr.iter().enumerate() {
        if val == n {
            if first.is_none() {
                first = Some(i);
            }
            last = Some(i);
        }
    }

    (first, last)
}

fn main() {
    let arr = [1, 3, 3, 3, 3, 1, 9];
    let n = 3;

    let (first, last) = find_first_and_last_position(&arr, n);

    match (first, last) {
        (Some(f), Some(l)) => println!("First position = {}, Last position = {}", f, l),
        _ => println!("Not found"),
    }
}

 
 
/*
run:
 
First position = 1, Last position = 4

*/

 



answered May 10, 2025 by avibootz
...