This repository contains examples of many popular algorithms and data structures. Examples are written primarily in JavaScript, TypeScript, Python and Go.
Each algorithm and data structure has its own separate README with related explanations and links for further reading.
** Note that this project is meant to be used for learning and researching purposes only and it is not meant to be used for production.
A data structure is a particular way of organizing and storing data in a computer so that it can be accessed and modified efficiently. More precisely, a data structure is a collection of data values, the relationships among them, and the functions or operations that can be applied to the data.
- Arrays
- Strings
- Linked List
- Doubly Linked List
- Stack
- Queue
- Priority Queue
- Hash Table
- Heap
- Trie
- Tree
- Graph - directed/undirected/weighted
An algorithm is an unambiguous specification of how to solve a class of problems. It is a set of rules that precisely define a sequence of operations.
Background knowledge:
-
Arrays
-
Binary Search Trees
-
Binary Trees
-
Dynamic Programming
-
Famous Algorithms
-
Graphs
-
Greedy Algorithms
-
Heaps
-
Linked Lists
-
Recursion
-
Searching
-
Sorting
-
Stacks
-
Strings
-
Tries