How to check if two strings have the same words in different order with Rust

1 Answer

0 votes
use std::collections::HashSet;
 
fn have_same_words_in_different_order(s1: &str, s2: &str) -> bool {
    let set1: HashSet<&str> = s1.split_whitespace().collect();
    let set2: HashSet<&str> = s2.split_whitespace().collect();
     
    set1 == set2
}
 
fn main() {
    let str1 = "java c# c c++ rust";
    let str2 = "rust c++ java c# c";
    let str3 = "rust c++ java c# c python";
 
    if have_same_words_in_different_order(str1, str2) {
        println!("yes");
    } else {
        println!("no");
    }
     
    if have_same_words_in_different_order(str1, str3) {
        println!("yes");
    } else {
        println!("no");
    }
}
 
   
   
/*
run:
  
yes
no
  
*/

 



answered Nov 29, 2024 by avibootz
edited Nov 29, 2024 by avibootz
...