Skip to main content

Data Structures and Algorithms

A Very Practical Approach to Developing Problem Solving Skills

Big O Notation

Big O comlexity including runtime and space complexities relevant to different data structures, algorithms, patterns, methods or techniques.

Data Structures (DS)

All major data structures including arrays, linked lists, hash tables, hash sets, stacks, queues, heaps, trees, graphs, tries, disjoint set or union-find, etc.


Most familiar algorithms including different sorting approaches, binary search, tree/graph breadth first search (BFS) and depth first search (DFS), etc.


All major patterns/approaches/methods/techniques including sliding window, matrix traversal, two pointers, fast and slow pointers, interval merging, cyclic sort, tree/graph BFS/DFS, binary search, bit manipulation, recursion, backtracking, greedy, dynamic programming, etc.

Solved Problems

Solutions to 100+ problems (added more regularly) in Java. Python support will be added in the future. TypeScript and JavaScript may be supported in the remote future.