Programming Topics

Browse our comprehensive collection of programming topics. Each guide includes detailed explanations, examples, and practice questions.

Basic Techniques

Operators

Core Concepts

Arithmetic, assignment, comparison, and logical operators

Variables & Data Types

Core Concepts

Understanding variables, primitive types, and type conversion

Loops

Iteration

For loops, while loops, and loop control statements

Time Complexity

Analysis

Understanding algorithm efficiency, calculation rules, complexity classes

Algorithms

Sorting Algorithms

Sorting

Sorting theory, implementation and binary search techniques

Complete Search

Brute Force

Generating subsets, permutations, backtracking techniques

Greedy Algorithms

Optimization

Coin problem, scheduling, tasks and deadlines, optimization

Dynamic Programming

Optimization

Problem optimization, longest sequences, knapsack problems

Amortized Analysis

Two Pointers

Two pointer methods, nearest elements, sliding window techniques

Range Queries

Data Structures

Static array queries, binary indexed trees, segment trees

Data Structures

Dynamic Arrays

Arrays

Creating, accessing, and manipulating dynamic arrays

Set Structures

Collections

Working with sets, operations and implementation techniques

Map Structures

Key-Value

Key-value pairs, hash maps, and dictionary implementations

Bit Manipulation

Optimization

Bit representation, operations, and optimization techniques

Graph Algorithms

Basics of Graphs

Fundamentals

Graph terminology and representation techniques

Graph Traversal

DFS/BFS

Depth-first search, breadth-first search and applications

Shortest Paths

Pathfinding

Bellman-Ford, Dijkstra's, and Floyd-Warshall algorithms

Tree Algorithms

Trees

Tree traversal, diameter, paths and binary trees

Spanning Trees

MST

Kruskal's algorithm, union-find, and Prim's algorithm

Directed Graphs

Topological

Topological sorting, dynamic programming, and cycle detection

Advanced Topics

Number Theory

Mathematics

Primes, factors, modular arithmetic and equation solving

Combinatorics

Counting

Binomial coefficients, Catalan numbers, inclusion-exclusion

Matrices

Linear Algebra

Matrix operations, linear recurrences and graph representations

Probability

Statistics

Calculation, events, random variables and randomized algorithms

Game Theory

Game Theory

Game states, Nim game, and the Sprague-Grundy theorem

String Algorithms

Pattern Matching

Trie structure, string hashing, and pattern matching

Square Root Algorithms

Optimization

Combining algorithms, integer partitions, and Mo's algorithm

Advanced Segment Trees

Trees

Lazy propagation, dynamic trees, and multi-dimensional structures

Sweep Line Algorithms

Geometry

Intersection points, closest pair, and convex hull problems