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 check whether a non-sequential vector is a subset of another non-sequential vector in Rust

1 Answer

0 votes
use std::collections::HashSet;

fn is_subset(vec1: &[i32], vec2: &[i32]) -> bool {
    // Create a HashSet from vec1 for efficient lookup
    let set: HashSet<_> = vec1.iter().cloned().collect();

    // Check if all elements of vec2 exist in the HashSet
    vec2.iter().all(|&item| set.contains(&item))
}

fn main() {
    let vec1 = vec![5, 1, 8, 12, 40, 7, 9, 100]; 
    let vec2 = vec![8, 40, 9, 1];               // Subset vector

    if is_subset(&vec1, &vec2) {
        println!("Yes, vec2 is a subset of vec1");
    } else {
        println!("No, vec2 is not a subset of vec1");
    }
}

      
/*
run:

Yes, vec2 is a subset of vec1
     
*/

 



answered Mar 25, 2025 by avibootz
...