πŸŽ“How I Study AIHISA
πŸ“–Read
πŸ“„PapersπŸ“°Blogs🎬Courses
πŸ’‘Learn
πŸ›€οΈPathsπŸ“šTopicsπŸ’‘Concepts🎴Shorts
🎯Practice
🧩Problems🎯Prompts🧠Review
Search

Concepts5

Category

πŸ”·Allβˆ‘Mathβš™οΈAlgoπŸ—‚οΈDSπŸ“šTheory

Level

AllBeginnerIntermediateAdvanced
Filtering by:
#coordinate compression
πŸ—‚οΈData StructureAdvanced

Wavelet Tree

A wavelet tree is a recursive data structure built over a sequence’s alphabet that answers rank, select, and quantile (k-th smallest) queries in O(log Οƒ) time, where Οƒ is the number of distinct values.

#wavelet tree#wavelet matrix#rank select+11
πŸ—‚οΈData StructureAdvanced

Persistent Segment Tree

A persistent segment tree stores every historical version of an array-like data while supporting queries and updates in O(log n) time.

#persistent segment tree#path copying#kth smallest+12
πŸ—‚οΈData StructureIntermediate

Merge Sort Tree

A Merge Sort Tree is a segment tree where every node stores the sorted list of values in its segment.

#merge sort tree#segment tree#range query+12
πŸ—‚οΈData StructureIntermediate

2D Fenwick Tree

A 2D Fenwick Tree (Binary Indexed Tree) supports point updates and rectangle sum queries in O(log n Γ— log m) time.

#2d fenwick tree#binary indexed tree 2d#bit 2d+12
πŸ—‚οΈData StructureBeginner

Array and Vector

Arrays and vectors store elements contiguously, giving O(1) random access via index.

#std::vector#dynamic array#reserve+12