Blog

Data Structures for Problem Solving

Understand the building blocks behind efficient problem solving and algorithm optimization.

Structure_Explorer

Linear

Arrays, Linked Lists, Stacks & Queues

5 Topics

Tree-based

BST, AVL, Red-Black, Heaps & Tries

8 Topics

Hash-based

Hash Tables, Maps, Sets & Collision

4 Topics

Advanced

Segment Trees, Fenwick, Union-Find

5 Topics

Deep Dives

LatestTutorials
Mastering Arrays: From Basics to Sliding Window TechniquesLinear

Mastering Arrays: From Basics to Sliding Window Techniques

A deep dive into array manipulation patterns — two-pointer, prefix sums, and sliding window — with real LeetCode problem walkthroughs.

NBHNguyen Bao Huy
14 min
Binary Search Trees: Insertion, Deletion & BalancingTree-based

Binary Search Trees: Insertion, Deletion & Balancing

Understand how BSTs maintain order, when they degrade to O(n), and how self-balancing variants like AVL and Red-Black trees solve this.

TMKTran Minh Khoa
18 min
Hash Tables Demystified: Collision Strategies ComparedHash-based

Hash Tables Demystified: Collision Strategies Compared

Chaining vs. open addressing, load factors, and why Python dicts and Java HashMaps make different trade-off decisions under the hood.

LTLLe Thi Lan
11 min
Segment Trees: Range Queries in O(log n)Advanced

Segment Trees: Range Queries in O(log n)

Build a segment tree from scratch, support lazy propagation for range updates, and apply it to competitive programming problems.

PDAPham Duc Anh
20 min