This repository contains examples of various algorithms and data structures implemented in Rust.
- Memory usage = static space + dynamic space
// T (n) = 3n + 5 => O(n)
fn sum_average(a : Vec<i32> ,n:i32){
let mut sum = 0;//1
let mut i = 0;//1
while i < n {//n+1
sum = sum + a[i];//n
i = i + 1;//n
}
let average = sum / n ;//1
println!("{} {}",sum,average); //1
}- time taken from algorithm start to completion
- O(1) < O(log n) < O(n) < O(n log n) < O(n²) < O(n³) < O(2ⁿ)
A data structure is a particular way of organizing and storing data in a computer so that it can be accessed and modified efficiently.
- Divide And Conquer
- Dynamic Programming
- Greedy
-
- Knapsack not 0/1 problem
- NP-C NP-complete problem
-
- Knapsack For the 0/1 dividend problem
- Recursion
- Design Patterns
- Cash
- Reinforcement Learning
- AI
-
-
-
- [basic]
-
