How to print the characters need to be removed so that two strings become anagram in Rust

1 Answer

0 votes
//use std::collections::HashMap;

const TOTAL_ABC_LETTERS: usize = 26;

fn print_characters_need_to_be_removed_for_anagram(str1: &str, str2: &str) {
    let mut count1 = vec![0; TOTAL_ABC_LETTERS];
    let mut count2 = vec![0; TOTAL_ABC_LETTERS];

    // count char frequency str1
    for ch in str1.chars() {
        count1[ch as usize - 'a' as usize] += 1;
    }

    // count char frequency str2
    for ch in str2.chars() {
        count2[ch as usize - 'a' as usize] += 1;
    }

    for i in 0..TOTAL_ABC_LETTERS {
        if (count1[i] as isize - count2[i] as isize).abs() > 0 {
            print!("{} ", (i as u8 + 'a' as u8) as char);
        }
    }
}

fn main() {
    let str1 = "masterfx";
    let str2 = "ksampret";

    print_characters_need_to_be_removed_for_anagram(str1, str2);
}


   
/*
run:
  
f k p x 
  
*/

 



answered Nov 30, 2024 by avibootz
...