data-structures-and-algorithms
├── README.md
├── LICENSE
├── CONTRIBUTING.md
├── data-structures
│ ├── arrays
│ │ ├── README.md
│ │ ├── implementation
│ │ │ ├── array.py
│ │ │ ├── array.cpp
│ │ │ └── array.java
│ │ └── examples
│ │ └── array_examples.md
│ ├── linked-lists
│ │ ├── README.md
│ │ ├── implementation
│ │ │ ├── singly_linked_list.py
│ │ │ ├── doubly_linked_list.py
│ │ │ ├── linked_list.cpp
│ │ │ └── linked_list.java
│ │ └── examples
│ │ └── linked_list_examples.md
│ ├── trees
│ │ ├── README.md
│ │ ├── implementation
│ │ │ ├── binary_tree.py
│ │ │ ├── binary_tree.cpp
│ │ │ └── binary_tree.java
│ │ └── examples
│ │ └── tree_examples.md
│ └── ... (other data structures)
├── algorithms
│ ├── sorting
│ │ ├── README.md
│ │ ├── implementation
│ │ │ ├── bubble_sort.py
│ │ │ ├── quick_sort.py
│ │ │ ├── sort.cpp
│ │ │ └── sort.java
│ │ └── examples
│ │ └── sorting_examples.md
│ ├── searching
│ │ ├── README.md
│ │ ├── implementation
│ │ │ ├── binary_search.py
│ │ │ ├── search.cpp
│ │ │ └── search.java
│ │ └── examples
│ │ └── searching_examples.md
│ └── ... (other algorithms)
└── resources
├── books.md
├── courses.md
└── websites.md
g++ -std=c++20 main.cpp && ./a.exe