bugl
bugl
HomeLearnPatternsPathsSearchPremium
HomeLearnPatternsPaths
Learn/DSA

DSA

DSA Reference

Reference algorithms worth knowing by name: the Euclidean algorithm, Huffman coding, and the traveling salesman problem.

Lesson 1

The Euclidean Algorithm

Named after the ancient Greek mathematician Euclid, the Euclidean algorithm is the oldest known non-trivial algorithm, described in Euclid's famous book "Elements" from 300 BCE.

Read lesson →Loading…
Lesson 2

Huffman Coding

Huffman Coding is an algorithm used for lossless data compression.

Read lesson →Loading…
Lesson 3

DSA The Traveling Salesman Problem

The Traveling Salesman Problem states that you are a salesperson and you must visit a number of cities or towns.

Read lesson →Loading…
Lesson 4

DSA The 0/1 Knapsack Problem

The 0/1 Knapsack Problem states that you have a backpack with a weight limit, and you are in a room full of treasures, each treasure with a value and a weight.

Read lesson →Loading…
Lesson 5

Memoization

Memoization is a technique where results are stored to avoid doing the same computations many times.

Read lesson →Loading…
Lesson 6

Tabulation

Tabulation is a technique used to solve problems.

Read lesson →Loading…
Lesson 7

Dynamic Programming

Dynamic Programming is a method for designing algorithms.

Read lesson →Loading…
Lesson 8

DSA Greedy Algorithms

A greedy algorithm decides what to do in each step, only based on the current situation, without a thought of how the total problem looks like.

Read lesson →Loading…

DSA chapters

All
1. DSA Tutorial2. Arrays3. Linked Lists4. Stacks & Queues5. Hash Tables6. Trees7. Graphs8. Shortest Path9. Minimum Spanning Tree10. Maximum Flow11. Time Complexity12. DSA Reference13. Practice