# DSA

- [Topics](/notebook/data-structures-and-algorithms/topics.md)
- [Introduction](/notebook/data-structures-and-algorithms/topics/introduction.md)
- [Algorithm analysis](/notebook/data-structures-and-algorithms/topics/algorithm-analysis.md)
- [Asymptotic Notation](/notebook/data-structures-and-algorithms/topics/algorithm-analysis/time-complexity.md)
- [Memory](/notebook/data-structures-and-algorithms/topics/algorithm-analysis/memory.md)
- [Sorting](/notebook/data-structures-and-algorithms/topics/sorting.md)
- [Selection Sort](/notebook/data-structures-and-algorithms/topics/sorting/selection-sort.md)
- [Insertion Sort](/notebook/data-structures-and-algorithms/topics/sorting/insertion-sort.md)
- [Merge Sort](/notebook/data-structures-and-algorithms/topics/sorting/merge-sort.md)
- [Quick Sort](/notebook/data-structures-and-algorithms/topics/sorting/quick-sort.md)
- [Quick'3 Sort](/notebook/data-structures-and-algorithms/topics/sorting/quick3-sort.md)
- [Shell Sort](/notebook/data-structures-and-algorithms/topics/sorting/shell-sort.md)
- [Shuffle sort](/notebook/data-structures-and-algorithms/topics/sorting/shuffle-sort.md)
- [Heap Sort](/notebook/data-structures-and-algorithms/topics/sorting/heap-sort.md)
- [Arrays.sort()](/notebook/data-structures-and-algorithms/topics/sorting/arrays.sort.md)
- [Key Points](/notebook/data-structures-and-algorithms/topics/sorting/key-points.md)
- [Problems](/notebook/data-structures-and-algorithms/topics/sorting/problems.md)
- [Reorder Log files](/notebook/data-structures-and-algorithms/topics/sorting/problems/reorder-log-files.md): https://leetcode.com/problems/reorder-data-in-log-files/
- [Stacks and Queues](/notebook/data-structures-and-algorithms/topics/stacks-and-queues.md)
- [Stack Implementations](/notebook/data-structures-and-algorithms/topics/stacks-and-queues/stack-implementations.md)
- [Queue Implementations](/notebook/data-structures-and-algorithms/topics/stacks-and-queues/queue-implementations.md)
- [Priority Queues](/notebook/data-structures-and-algorithms/topics/stacks-and-queues/priority-queues.md)
- [Problems](/notebook/data-structures-and-algorithms/topics/stacks-and-queues/problems.md)
- [Dijkstra's two-stack algorithm](/notebook/data-structures-and-algorithms/topics/stacks-and-queues/problems/dijkstras-two-stack-algorithm.md)
- [Binary Search Tree](/notebook/data-structures-and-algorithms/topics/binary-search-tree.md)
- [Left Leaning Red Black Tree](/notebook/data-structures-and-algorithms/topics/binary-search-tree/red-black-tree.md)
- [Java Implementations](/notebook/data-structures-and-algorithms/topics/binary-search-tree/red-black-tree/java-implementations.md)
- [2-3 Tree](/notebook/data-structures-and-algorithms/topics/binary-search-tree/2-3-tree.md)
- [Search Operation - 2-3 Tree](/notebook/data-structures-and-algorithms/topics/binary-search-tree/2-3-tree/search-operation-2-3-tree.md)
- [Insert Operation - 2-3 Tree](/notebook/data-structures-and-algorithms/topics/binary-search-tree/2-3-tree/insert-operation-2-3-tree.md)
- [Geometric Applications of BST](/notebook/data-structures-and-algorithms/topics/binary-search-tree/geometric-applications-of-bst.md)
- [B-Tree](/notebook/data-structures-and-algorithms/topics/b-tree.md)
- [Graphs](/notebook/data-structures-and-algorithms/topics/graphs.md)
- [Undirected Graphs](/notebook/data-structures-and-algorithms/topics/graphs/undirected-graphs.md)
- [Directed Graphs](/notebook/data-structures-and-algorithms/topics/graphs/directed-graphs.md)
- [Topological Sort](/notebook/data-structures-and-algorithms/topics/graphs/topological-sort.md)
- [Union Find](/notebook/data-structures-and-algorithms/topics/union-find-data-structure.md)
- [Dynamic Connectivity](/notebook/data-structures-and-algorithms/topics/union-find-data-structure/dynamic-connectivity.md)
- [Quick Find - Eager Approach](/notebook/data-structures-and-algorithms/topics/union-find-data-structure/quick-find-eager-approach.md)
- [Quick Find - Lazy Approach](/notebook/data-structures-and-algorithms/topics/union-find-data-structure/quick-find-lazy-approach.md)
- [Defects](/notebook/data-structures-and-algorithms/topics/union-find-data-structure/defects.md)
- [Weighted Quick Union](/notebook/data-structures-and-algorithms/topics/union-find-data-structure/weighted-quick-union.md)
- [Quick Union + path comparison](/notebook/data-structures-and-algorithms/topics/union-find-data-structure/quick-union-+-path-comparison.md)
- [Amortized Analysis](/notebook/data-structures-and-algorithms/topics/union-find-data-structure/amortized-analysis.md)
- [Convex Hull](/notebook/data-structures-and-algorithms/topics/convex-hull.md)
- [Binary Heaps and Priority Queue](/notebook/data-structures-and-algorithms/topics/binary-heaps-and-priority-queue.md)
- [Hash Table vs Binary Search Trees](/notebook/data-structures-and-algorithms/topics/hash-table-vs-binary-search-trees.md)
