Subsections of Libraries
itertools
External link: https://docs.rs/itertools/latest/itertools/
Working with iterators
Sorting() a string of letters (with rev() - reverse order)
use itertools::Itertools;
let text = "Hello world";
let text_sorted = text.chars().sorted().rev().collect::<String>();
// rev() - Iterate the iterable in reverse
println!("Text: {}, Sorted Text: {}", text, text_sorted);
// Text: Hello world, Sorted Text: wroollledH
Counts() подсчёт количества одинаковых элементов в Array
use itertools::Itertools;
let number_list = [1,12,3,1,5,2,7,8,7,8,2,3,12,7,7];
let mode = number_list.iter().counts(); // Itertools::counts()
// возвращает Hashmap, где ключи взяты из массива, значения - частота
for (key, value) in &mode {
println!("Число {key} встречается {value} раз");
}
rand
Generating random numbers
External links:
Using rand lib example:
use rand::Rng;
fn main() {
let secret_of_type = rand::thread_rng().gen::<u32>();
let secret = rand::thread_rng().gen_range(1..=100);
println!("Random nuber of type u32: {secret_of_type}");
println!("Random nuber from 1 to 100: {}", secret); }