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,870 questions

51,793 answers

573 users

How to create a vector from a 2D array that only includes the non-zero elements in Rust

1 Answer

0 votes
fn main() {
    let array = [
        [1, 0, 8, 2],
        [0, 7, 3, 0],
        [9, 0, 0, 4],
    ];

    let mut non_zero_list = Vec::new();

    // Collect non-zero elements
    for row in &array {
        for &element in row {
            if element != 0 {
                non_zero_list.push(element);
            }
        }
    }

    // Convert the list back to a one-dimensional vector
    let result_vec: Vec<i32> = non_zero_list.iter().cloned().collect();

    for element in result_vec {
        print!("{} ", element);
    }
}


     
/*
run:
  
1 8 2 7 3 9 4 
    
*/

 



answered Feb 13, 2025 by avibootz
...