DEBI PRAHARADIKA
← Back to Blog Index
Algorithm2026-05-299 min read

Taksonomi Algoritma Lengkap

Cetak biru lengkap klasifikasi 300+ algoritma komputer lintas 16 kategori terstruktur beserta kompleksitas, era, dan analisis kasus penggunaan industrinya.

Dalam ilmu komputer dan rekayasa sistem, algoritma adalah fondasi utama yang mendikte seberapa efisien, aman, dan skalabel sebuah aplikasi dijalankan. Namun, dengan ratusan algoritma yang eksis saat ini, insinyur sering kesulitan memilih algoritma terbaik untuk kasus penggunaan spesifik mereka.

Untuk mempermudah penjelajahan, cetak biru arsitektur visual di bawah memetakan taksonomi klasifikasi algoritma modern yang membagi 300+ algoritma ke dalam tiga paradigma era utama: Classic (🔵), Modern (🟢), dan Frontier/Research (🔴).

Peta Arsitektur Taksonomi Algoritma Lengkap

Kode Era Kategori: 🔵 Classic | 🟢 Modern | 🔴 Research/Frontier


1. Sorting & Ordering

Comparison-Based

Algoritma Era Kompleksitas Penggunaan
Bubble Sort 🔵 Classic O(n²) Edukasi, data kecil
Selection Sort 🔵 Classic O(n²) Memory terbatas
Insertion Sort 🔵 Classic O(n²) Data kecil / hampir terurut
Merge Sort 🔵 Classic O(n log n) General purpose, linked lists
Quick Sort 🔵 Classic O(n log n) avg General purpose
Heap Sort 🔵 Classic O(n log n) Real-time systems
Shell Sort 🔵 Classic O(n log² n) Embedded systems
Tim Sort 🟢 Modern O(n log n) Python, Java standard library
Intro Sort 🟢 Modern O(n log n) C++ std::sort
Gnome Sort 🔵 Classic O(n²) Pembelajaran/sederhana
Pancake Sort 🔵 Classic O(n) flips Matematika diskrit, robotika
Block Sort 🟢 Modern O(n log n) In-place stable sort berkinerja tinggi

Non-Comparison (Linear)

Algoritma Era Kompleksitas Penggunaan
Counting Sort 🔵 Classic O(n + k) Integer data, range kecil
Radix Sort 🔵 Classic O(nk) Integer/string sorting
Bucket Sort 🔵 Classic O(n + k) Distribusi data seragam

Parallel / Distributed

Algoritma Era Kompleksitas Penggunaan
Bitonic Sort 🔵 Classic O(log² n) parallel GPU computing, hardware
Odd-Even Sort 🔵 Classic O(n) parallel Parallel computing
Sample Sort 🟢 Modern O(n log n / p) Distributed computing, MapReduce

2. Searching

Array / List Search

Algoritma Era Kompleksitas Penggunaan
Linear Search 🔵 Classic O(n) Data tak terurut
Binary Search 🔵 Classic O(log n) Data terurut, lookup cepat
Interpolation Search 🔵 Classic O(log log n) Data terdistribusi seragam
Exponential Search 🔵 Classic O(log n) Unbounded arrays
Fibonacci Search 🔵 Classic O(log n) Arsitektur tanpa division
Jump Search 🔵 Classic O(√n) Pencarian pada array terurut dengan step konstan
Ternary Search 🔵 Classic O(log n) Mencari nilai ekstrim fungsi unimodal

String Search

Algoritma Era Kompleksitas Penggunaan
KMP (Knuth-Morris-Pratt) 🔵 Classic O(n + m) String matching
Boyer-Moore 🔵 Classic O(n/m) best Text search, grep
Rabin-Karp 🔵 Classic O(n + m) Plagiarism detection
Aho-Corasick 🔵 Classic O(n + m + z) Antivirus, network IDS
Z Algorithm 🔵 Classic O(n) Bioinformatics, text
Suffix Array 🟢 Modern O(n log n) Full-text search, bioinformatics

Graph / Tree Search

Pada grafis perbandingan arsitektur pencarian rute di bawah, visualisasikan bagaimana Dijkstra mengeksplorasi jalan secara radial melingkar ke segala arah tanpa petunjuk, sementara A* Search melangkah secara fokus dan cepat menuju node target menggunakan rumus heuristik $f(n) = g(n) + h(n)$:

Perbandingan Pencarian Rute: Dijkstra vs A* Search

Algoritma Era Kompleksitas Penggunaan
BFS (Breadth-First Search) 🔵 Classic O(V + E) Shortest path (unweighted), web crawling
DFS (Depth-First Search) 🔵 Classic O(V + E) Topological sort, cycle detection
A* 🔵 Classic O(b^d) Game AI, GPS navigation
Dijkstra 🔵 Classic O((V+E) log V) GPS, network routing
Bidirectional Search 🔵 Classic O(b^(d/2)) Path planning
IDA* 🔵 Classic O(b^d) Memory-constrained AI

3. Graph Algorithms

Shortest Path

Algoritma Era Kompleksitas Penggunaan
Bellman-Ford 🔵 Classic O(VE) Routing protocols (BGP)
Floyd-Warshall 🔵 Classic O(V³) Network analysis
Johnson's Algorithm 🔵 Classic O(V² log V + VE) Sparse graphs
SPFA 🟢 Modern O(kE) Competitive programming

Spanning Tree

Algoritma Era Kompleksitas Penggunaan
Kruskal's 🔵 Classic O(E log E) Network design
Prim's 🔵 Classic O(E log V) Dense graph, network
Borůvka's 🔵 Classic O(E log V) Parallel MST

Flow & Matching

Algoritma Era Kompleksitas Penggunaan
Ford-Fulkerson 🔵 Classic O(Ef) Network flow, bipartite matching
Edmonds-Karp 🔵 Classic O(VE²) Network optimization
Dinic's Algorithm 🔵 Classic O(V²E) Large flow networks
Hungarian Algorithm 🔵 Classic O(n³) Task scheduling, matching
Hopcroft-Karp 🔵 Classic O(E√V) Bipartite matching
Edmonds' Blossom Algorithm 🔵 Classic O(V²E) Maximum matching pada graf umum

Connectivity & Structure

Algoritma Era Kompleksitas Penggunaan
Tarjan's SCC 🔵 Classic O(V + E) Compiler optimization, graph analysis
Kosaraju's 🔵 Classic O(V + E) Social network analysis
Topological Sort 🔵 Classic O(V + E) Build systems, task scheduling
Union-Find (DSU) 🔵 Classic O(α(n)) Kruskal, connectivity queries
PageRank 🟢 Modern O(k·(V+E)) Web search, citation analysis
HITS 🟢 Modern O(k·(V+E)) Web analysis
Louvain Method 🟢 Modern O(n log n) Social networks, clustering
Girvan-Newman 🟢 Modern O(m²n) Community detection
Hierholzer's Algorithm 🔵 Classic O(V + E) Menemukan sirkuit/jalur Eulerian
Karger's Algorithm 🟢 Modern O(V² log³ V) Minimum cut berbasis probabilitas

4. Dynamic Programming

Classic DP

Algoritma Era Kompleksitas Penggunaan
Fibonacci DP 🔵 Classic O(n) Edukasi, baseline
Knapsack (0/1) 🔵 Classic O(nW) Resource allocation, finance
Knapsack (Unbounded) 🔵 Classic O(nW) Coin change, cutting stock
Longest Common Subsequence 🔵 Classic O(nm) diff tool, bioinformatics
Longest Increasing Subsequence 🔵 Classic O(n log n) Sequence analysis
Edit Distance (Levenshtein) 🔵 Classic O(nm) Spell check, fuzzy search, NLP
Matrix Chain Multiplication 🔵 Classic O(n³) Compiler optimization
Coin Change 🔵 Classic O(nA) Finance, combinatorics
Rod Cutting 🔵 Classic O(n²) Manufacturing, optimization
Kadane's Algorithm 🔵 Classic O(n) Menemukan maximum subarray sum

Interval & Advanced DP

Algoritma Era Kompleksitas Penggunaan
Interval DP 🔵 Classic O(n³) Parsing, triangulation
Bitmask DP 🔵 Classic O(2ⁿ·n) TSP, assignment problems
DP on Trees 🔵 Classic O(n) Graph problems, competitive programming
Digit DP 🔵 Classic O(d·10·2) Competitive programming, number theory
Broken Profile DP 🔴 Research O(n·m·2^m) Tiling, grid problems
CYK Algorithm 🔵 Classic O(n³·|G|) Parsing Context-Free Grammar

5. Machine Learning

Classical ML

Algoritma Era Kompleksitas Penggunaan
Linear Regression 🔵 Classic O(n²d) Regresi, forecasting
Logistic Regression 🔵 Classic O(nd·iter) Klasifikasi, credit scoring
Naive Bayes 🔵 Classic O(nd) Spam filter, NLP
k-NN 🔵 Classic O(nd) Rekomendasi, klasifikasi
SVM (Support Vector Machine) 🔵 Classic O(n²d) Klasifikasi teks, bioinformatics
Decision Tree 🔵 Classic O(n²d) Interpretable ML, tabular data
Random Forest 🟢 Modern O(k·n log n) Tabular data, feature importance
Gradient Boosting 🟢 Modern O(k·n log n) Kaggle winner, tabular data
XGBoost 🟢 Modern O(k·n log n) Industri, kompetisi data science
LightGBM 🟢 Modern O(k·n log n) Large-scale tabular data
CatBoost 🟢 Modern O(k·n log n) Categorical data
AdaBoost 🔵 Classic O(N·M) Algoritma boosting klasik berkinerja tinggi

Clustering

Algoritma Era Kompleksitas Penggunaan
k-Means 🔵 Classic O(nkd·iter) Segmentasi, compression
DBSCAN 🔵 Classic O(n log n) Geospatial, anomaly detection
Hierarchical Clustering 🔵 Classic O(n³) Bioinformatics, dendrogram
Gaussian Mixture Models 🔵 Classic O(n·k·d²) Density estimation
HDBSCAN 🟢 Modern O(n log n) High-dimensional data
OPTICS 🟢 Modern O(n log n) Variable density clusters
Isolation Forest 🟢 Modern O(n log n) Deteksi anomali pada data tabular
Spectral Clustering 🟢 Modern O(n³) Clustering grafis berbasis nilai eigen matriks laplacian

Dimensionality Reduction

Algoritma Era Kompleksitas Penggunaan
PCA 🔵 Classic O(n²d) Feature reduction, visualization
LDA 🔵 Classic O(nd²) Classification preprocessing
ICA 🔵 Classic O(n²d) Signal processing, fMRI
t-SNE 🟢 Modern O(n log n) ML visualization
UMAP 🟢 Modern O(n^1.14) Embedding visualization, preprocessing
Autoencoder 🟢 Modern O(depends) Anomaly detection, generation

6. Deep Learning

Architectures

Algoritma Era Kompleksitas Penggunaan
MLP / Feedforward 🔵 Classic O(n·d·h) Tabular data, classification
CNN (Convolutional Neural Network) 🟢 Modern O(n·k²·c) Computer vision
RNN / LSTM / GRU 🟢 Modern O(n·h²) NLP, time series (pre-Transformer)
Transformer 🟢 Modern O(n²d) NLP, CV, multimodal AI
Vision Transformer (ViT) 🟢 Modern O(n²d) Image classification, detection
Graph Neural Network (GNN) 🟢 Modern O(E·h) Social networks, drug discovery, fraud
Diffusion Models 🔴 Research O(T·n) Image/audio/video generation
State Space Models (Mamba) 🔴 Research O(n) Long-context NLP, genomics
Mixture of Experts (MoE) 🔴 Research O(n·k/E) LLM scaling (GPT-4, Mixtral)
Kolmogorov-Arnold Networks (KAN) 🔴 Research O(n·p²) Scientific ML, interpretability

Training Algorithms

Algoritma Era Kompleksitas Penggunaan
Backpropagation 🔵 Classic O(n·d) Semua neural network training
SGD (Stochastic Gradient Descent) 🔵 Classic O(d) DL training baseline
Adam 🟢 Modern O(d) Default optimizer DL
AdamW 🟢 Modern O(d) LLM training
LoRA / QLoRA 🟢 Modern O(n·r) LLM fine-tuning
RLHF 🟢 Modern O(n·d) ChatGPT, Claude, Gemini
Lion 🔴 Research O(d) Large model training
DPO (Direct Preference Optimization) 🔴 Research O(n·d) LLM alignment
RMSprop 🟢 Modern O(d) Optimizer adaptif untuk DL
AdaGrad 🟢 Modern O(d) Optimizer adaptif berbasis gradien historis

Generative Models

Algoritma Era Kompleksitas Penggunaan
GAN (Generative Adversarial Network) 🟢 Modern O(n·d) Image synthesis, deepfake
VAE (Variational Autoencoder) 🟢 Modern O(n·d) Generation, representation learning
Flow Models (Normalizing Flows) 🟢 Modern O(n·d) Audio generation, density estimation
Score Matching 🔴 Research O(n·T) Generative modeling
Consistency Models 🔴 Research O(n) Fast image generation
NeRF 🔴 Research O(varies) Rekonstruksi 3D scene menggunakan neural network
3D Gaussian Splatting 🔴 Research O(N) Rendering/rekonstruksi 3D real-time

7. Cryptography

Symmetric Encryption

Algoritma Era Kompleksitas Penggunaan
AES 🟢 Modern O(n) TLS, file encryption, disk encryption
DES / 3DES 🔵 Classic O(n) Legacy systems (deprecated)
ChaCha20 🟢 Modern O(n) TLS 1.3, mobile
Blowfish / Twofish 🟢 Modern O(n) Password hashing (Bcrypt)
Bcrypt / Scrypt 🟢 Modern O(work factor) Hashing password dengan ketahanan brute-force tinggi

Asymmetric / Public Key

Algoritma Era Kompleksitas Penggunaan
RSA 🔵 Classic O(k³) TLS, digital signatures, key exchange
Diffie-Hellman 🔵 Classic O(k²) TLS, SSH key exchange
Elliptic Curve (ECC) 🟢 Modern O(k²) Bitcoin, TLS, modern cryptography
EdDSA (Ed25519) 🟢 Modern O(k²) SSH, Signal protocol
ElGamal 🔵 Classic O(k²) GPG encryption
DSA 🔵 Classic O(k³) Standar federal AS terdahulu untuk tanda tangan digital

Hash Functions

Algoritma Era Kompleksitas Penggunaan
MD5 🔵 Classic O(n) Checksum saja (bukan security)
SHA-1 🔵 Classic O(n) Legacy systems (deprecated)
SHA-256 / SHA-3 🟢 Modern O(n) TLS, Bitcoin, digital signatures
BLAKE2 🟢 Modern O(n) File integrity, general hashing
BLAKE3 🟢 Modern O(n) High-performance hashing
Argon2 🟢 Modern O(n·m) Password storage

Post-Quantum Cryptography

Ilustrasi alur migrasi di bawah menggambarkan ancaman komputer kuantum yang mampu meretakan algoritma asimetris klasik (RSA & ECC) menggunakan Algoritma Shor, serta peta pertahanan tangguh berbasis kisi matematika (Lattice-based) seperti CRYSTALS-Kyber dan CRYSTALS-Dilithium:

Peta Migrasi Kriptografi Pasca-Quantum

Algoritma Era Kompleksitas Penggunaan
CRYSTALS-Kyber 🔴 Research O(n log n) Post-quantum key exchange (NIST standard)
CRYSTALS-Dilithium 🔴 Research O(n log n) Post-quantum signatures (NIST standard)
NTRU 🔴 Research O(n log n) Post-quantum encryption
SPHINCS+ 🔴 Research O(log² n) Post-quantum signatures
McEliece Cryptosystem 🔵 Classic O(n²) Skema kunci publik berbasis kode koreksi kesalahan

8. Optimization

Gradient-Based

Algoritma Era Kompleksitas Penggunaan
Gradient Descent 🔵 Classic O(d·iter) ML training, optimization
Newton's Method 🔵 Classic O(d³·iter) Logistic regression, SciPy
L-BFGS 🔵 Classic O(d·iter) ML, scientific computing
Conjugate Gradient 🔵 Classic O(n√κ) FEM, large-scale linear systems
Nelder-Mead Method 🔵 Classic O(iter) Optimasi multidimensi tanpa gradien

Metaheuristic

Algoritma Era Kompleksitas Penggunaan
Simulated Annealing 🔵 Classic O(iter) TSP, circuit design
Genetic Algorithm 🔵 Classic O(gen·pop) Scheduling, parameter tuning
Particle Swarm Optimization 🟢 Modern O(gen·pop) Continuous optimization
Differential Evolution 🟢 Modern O(gen·pop) Global optimization, ML tuning
Ant Colony Optimization 🟢 Modern O(iter·n²) Routing, scheduling
CMA-ES 🟢 Modern O(d²·iter) Robotics, neuroevolution
Bayesian Optimization 🟢 Modern O(n³) Hyperparameter tuning, AutoML
Tabu Search 🔵 Classic O(iter) Metaheuristik pencarian lokal dengan memori tabu
Hill Climbing 🔵 Classic O(iter) Optimasi heuristik lokal sederhana

Linear & Integer Programming

Algoritma Era Kompleksitas Penggunaan
Simplex Method 🔵 Classic O(2^n) worst LP, operations research
Interior Point Methods 🟢 Modern O(n³·L) Large-scale LP, SDP
Branch and Bound 🔵 Classic O(2^n) worst ILP, TSP exact solution
Cutting Plane 🔵 Classic O(poly) ILP, combinatorial optimization
Column Generation 🟢 Modern O(poly) Airline scheduling, crew

9. Compression & Coding

Lossless

Algoritma Era Kompleksitas Penggunaan
Huffman Coding 🔵 Classic O(n log n) ZIP, JPEG, PNG
Arithmetic Coding 🔵 Classic O(n) HEVC, modern compressors
LZ77 / LZ78 🔵 Classic O(n) ZIP, gzip, deflate
LZW 🔵 Classic O(n) GIF, TIFF, PDF
BWT (Burrows-Wheeler Transform) 🔵 Classic O(n log n) bzip2, SAM format
Deflate 🟢 Modern O(n) PNG, gzip, HTTP compression
Brotli 🟢 Modern O(n) Web compression (HTTP)
Zstandard (zstd) 🟢 Modern O(n) Linux kernel, databases
ANS / rANS 🟢 Modern O(n) zstd, HEVC, JPEG XL
LZMA 🟢 Modern O(n) Kompresi rasio tinggi pada format 7z/xz
Run-Length Encoding (RLE) 🔵 Classic O(n) Kompresi lossless paling sederhana berbasis sekuens berulang

Lossy

Algoritma Era Kompleksitas Penggunaan
DCT (JPEG) 🔵 Classic O(n log n) JPEG, MP3, video codecs
Wavelet (JPEG 2000) 🟢 Modern O(n) Medical imaging, JPEG 2000
VQ (Vector Quantization) 🔵 Classic O(n·k) Speech coding, image
Neural Image Compression 🔴 Research O(n·d) Next-gen image compression

Error Correction

Algoritma Era Kompleksitas Penggunaan
Hamming Code 🔵 Classic O(n) RAM ECC, legacy telecom
Reed-Solomon 🔵 Classic O(n log n) QR code, CD/DVD, storage
Turbo Codes 🟢 Modern O(n) 3G/4G LTE, deep space
LDPC 🟢 Modern O(n) 5G, WiFi 802.11, deep space
Polar Codes 🔴 Research O(n log n) 5G NR control channel
BCH Code 🔵 Classic O(n log n) Kode koreksi error aljabar linier

10. Number Theory & Math

Prime & Factorization

Algoritma Era Kompleksitas Penggunaan
Sieve of Eratosthenes 🔵 Classic O(n log log n) Number theory, competitive programming
Sieve of Atkin 🔵 Classic O(n / log log n) Large prime generation
Miller-Rabin 🔵 Classic O(k log²n) RSA key generation
Pollard's Rho 🔵 Classic O(n^¼) Integer factorization
AKS Primality Test 🟢 Modern O(log^6 n) Theoretical CS, verification
GNFS (General Number Field Sieve) 🟢 Modern O(sub-exp) Breaking RSA, cryptanalysis

GCD & Modular Arithmetic

Algoritma Era Kompleksitas Penggunaan
Euclidean Algorithm 🔵 Classic O(log min) Number theory, fractions
Extended Euclidean 🔵 Classic O(log min) RSA, modular arithmetic
Fast Modular Exponentiation 🔵 Classic O(log e) RSA, primality testing
CRT (Chinese Remainder Theorem) 🔵 Classic O(n²) RSA optimization, number theory
Binary GCD 🔵 Classic O(log² n) FPB cepat menggunakan operasi bitwise
Montgomery Modular Multiplication 🔵 Classic O(log² n) Perkalian modular cepat untuk kriptografi

Transform & FFT

Algoritma Era Kompleksitas Penggunaan
FFT (Cooley-Tukey) 🔵 Classic O(n log n) Signal processing, polynomial multiplication
NTT (Number Theoretic Transform) 🔵 Classic O(n log n) Competitive programming, crypto
Walsh-Hadamard Transform 🔵 Classic O(n log n) Coding theory, competitive programming
Schönhage-Strassen 🟢 Modern O(n log n log log n) Big number libraries (GMP)
Harvey-Hoeven 🔴 Research O(n log n) Theoretical breakthrough 2019
Strassen's Algorithm 🔵 Classic O(n^2.807) Perkalian matriks cepat sub-kubik

11. Computational Geometry

Convex Hull

Algoritma Era Kompleksitas Penggunaan
Graham Scan 🔵 Classic O(n log n) GIS, computer graphics
Jarvis March (Gift Wrapping) 🔵 Classic O(nh) Output-sensitive, small h
Chan's Algorithm 🔵 Classic O(n log h) Optimal convex hull
QuickHull 🔵 Classic O(n log n) avg GPU, point cloud
Andrew's Monotone Chain 🔵 Classic O(n log n) Varian Graham Scan yang lebih praktis untuk Convex Hull

Proximity & Intersection

Algoritma Era Kompleksitas Penggunaan
Closest Pair of Points 🔵 Classic O(n log n) GIS, collision detection
Line Sweep (Shamos-Hoey / Bentley-Ottmann) 🔵 Classic O(n log n) CAD, GIS
Voronoi Diagram (Fortune's) 🔵 Classic O(n log n) GIS, network planning
Delaunay Triangulation 🔵 Classic O(n log n) Mesh generation, FEM
KD-Tree / R-Tree 🔵 Classic O(log n) Databases, GIS, ML (k-NN)
Bowyer-Watson Algorithm 🔵 Classic O(n log n) avg Pembentukan Delaunay Triangulation

Polygon Operations

Algoritma Era Kompleksitas Penggunaan
Point in Polygon 🔵 Classic O(n) GIS, game collision
Sutherland-Hodgman Clipping 🔵 Classic O(n) Computer graphics, GIS
Boolean Polygon Operations 🟢 Modern O(n log n) CAD, GIS, vector graphics
Cohen-Sutherland 🔵 Classic O(1) avg Pemotongan garis 2D pada viewport grafika komputer

12. String & Text Processing

String Structures

Algoritma Era Kompleksitas Penggunaan
Trie 🔵 Classic O(m) Autocomplete, spell check, IP routing
Suffix Tree (Ukkonen's) 🔵 Classic O(n) Bioinformatics, full-text search
Suffix Automaton 🔵 Classic O(n) Substring counting, LCS
Ternary Search Trie 🟢 Modern O(log n) Autocomplete, symbol tables
FM-Index 🟢 Modern O(m log n) Genome alignment, bioinformatics
Patricia Trie (Radix Tree) 🔵 Classic O(k) Trie terkompresi hemat memori
Manacher's Algorithm 🔵 Classic O(n) Menemukan palindrom terpanjang dalam string

NLP Algorithms

Algoritma Era Kompleksitas Penggunaan
TF-IDF 🔵 Classic O(nd) Search engine, information retrieval
BM25 🟢 Modern O(n) Elasticsearch, search engines
Word2Vec 🟢 Modern O(n·w·d) NLP, semantic similarity
FastText 🟢 Modern O(n·w·d) Multilingual NLP
Byte Pair Encoding (BPE) 🟢 Modern O(n·v) GPT, BERT, semua LLM tokenizer
BERT / RoBERTa 🟢 Modern O(n²d) NLP semua task
GPT Architecture 🟢 Modern O(n²d) LLM, text generation
RAG (Retrieval-Augmented Generation) 🟢 Modern O(n·k) Enterprise AI, knowledge bases
WordPiece / SentencePiece 🟢 Modern O(n) Subword tokenization yang digunakan BERT/T5

13. Scheduling & Systems

CPU Scheduling

Algoritma Era Kompleksitas Penggunaan
FIFO / FCFS 🔵 Classic O(1) Batch processing
Round Robin 🔵 Classic O(n) OS process scheduling
SJF / SRTF 🔵 Classic O(n log n) Batch job scheduling
Priority Scheduling 🔵 Classic O(log n) Real-time OS, QoS
EDF (Earliest Deadline First) 🔵 Classic O(n log n) Real-time OS, multimedia
CFS (Completely Fair Scheduler) 🟢 Modern O(log n) Linux kernel default

Task & Job Scheduling

Algoritma Era Kompleksitas Penggunaan
List Scheduling 🔵 Classic O(n log n) Parallel computing
Critical Path Method (CPM/PERT) 🔵 Classic O(V + E) Project management
Job Shop Scheduling 🔵 Classic NP-hard Manufacturing, operations research
Disk Scheduling (SCAN/C-SCAN) 🔵 Classic O(n log n) Pengaturan pergerakan head disk

Memory Management

Algoritma Era Kompleksitas Penggunaan
LRU Cache 🔵 Classic O(1) CPU cache, web cache, CDN
LFU Cache 🔵 Classic O(1) Cache replacement
ARC Cache 🟢 Modern O(1) ZFS, storage systems
Mark-and-Sweep GC 🔵 Classic O(n) Java GC, JavaScript V8
Generational GC 🟢 Modern O(n_young) JVM, .NET CLR, Python
Clock Page Replacement 🔵 Classic O(1) Aproksimasi praktis LRU untuk OS
MVCC 🟢 Modern O(1) Kontrol konkurensi non-blocking database modern

14. Distributed Systems

Consensus & Coordination

Visualisasi interaktif di bawah membedah mekanisme konsensus Raft—mulai dari proses pemilihan pemimpin (Leader Election via RequestVote RPC) hingga replikasi entri log transaksi terdistribusi secara konsisten (Log Replication via AppendEntries RPC):

Alur Protokol Konsensus Raft

Algoritma Era Kompleksitas Penggunaan
Paxos 🔵 Classic O(n) Chubby, Zookeeper
Raft 🟢 Modern O(n) etcd, TiKV, CockroachDB
PBFT (Practical Byzantine Fault Tolerance) 🔵 Classic O(n²) Blockchain, distributed ledger
Viewstamped Replication 🔵 Classic O(n) Distributed databases
Zab (Zookeeper Atomic Broadcast) 🟢 Modern O(n) Apache Zookeeper
SWIM Protocol 🟢 Modern O(1) Protokol keanggotaan kelompok terdistribusi berbasis gosip

Hashing & Partitioning

Algoritma Era Kompleksitas Penggunaan
Consistent Hashing 🟢 Modern O(log n) Cassandra, DynamoDB, CDN
Rendezvous Hashing 🟢 Modern O(n) Content distribution
Jump Hash 🟢 Modern O(log n) Google internal sharding
Maglev Hashing 🔴 Research O(n log n) Google Maglev load balancer

Clock & Ordering

Algoritma Era Kompleksitas Penggunaan
Lamport Timestamps 🔵 Classic O(1) Distributed systems, causality
Vector Clocks 🔵 Classic O(n) Dynamo, Riak, Voldemort
Hybrid Logical Clock (HLC) 🟢 Modern O(1) CockroachDB, yugabyte
TrueTime (Google) 🔴 Research O(1) Google Spanner
Chandy-Lamport Algorithm 🔵 Classic O(e) Pengambilan snapshot terdistribusi yang konsisten
Bully Algorithm 🔵 Classic O(n²) Pemilihan pemimpin terdistribusi

Replication & Consistency

Algoritma Era Kompleksitas Penggunaan
Two-Phase Commit (2PC) 🔵 Classic O(n) Distributed transactions
Three-Phase Commit (3PC) 🔵 Classic O(n) Distributed transactions
Merkle Tree 🔵 Classic O(log n) Git, Bitcoin, distributed sync
Gossip Protocol 🟢 Modern O(log n) Cassandra, membership, health
CRDT (Conflict-free Replicated Data Types) 🟢 Modern O(1) Collaborative editing, Riak

15. AI & Decision Making

Reinforcement Learning

Algoritma Era Kompleksitas Penggunaan
Q-Learning 🔵 Classic O(|S|·|A|) Game AI, robotics
SARSA 🔵 Classic O(|S|·|A|) RL pada masalah kontinu
MCTS (Monte Carlo Tree Search) 🔵 Classic O(iter) Board games, planning, LLM decoding
DQN (Deep Q-Network) 🟢 Modern O(n·d) Game AI, Atari
PPO (Proximal Policy Optimization) 🟢 Modern O(n·d) ChatGPT RLHF, robotics, games
SAC (Soft Actor-Critic) 🟢 Modern O(n·d) Continuous control, robotics
AlphaZero / MuZero 🔴 Research O(b^d) Board games, planning

Classical AI Search

Algoritma Era Kompleksitas Penggunaan
Minimax 🔵 Classic O(b^d) Board games AI
Alpha-Beta Pruning 🔵 Classic O(b^(d/2)) Chess engines
Expectimax 🔵 Classic O(b^d) Stochastic games, Pacman
Uniform Cost Search (UCS) 🔵 Classic O(b^(1 + [C*/ε])) Pencarian rute terpendek graf berbobot dasar AI
Iterative Deepening DFS (IDDFS) 🔵 Classic O(b^d) Pencarian kombinasi efisiensi ruang DFS dan kelengkapan BFS
Beam Search 🔵 Classic O(B · L) Pencarian heuristik dengan lebar terbatas untuk LLM decoding
POMDP Planning 🔴 Research O(exp) Autonomous driving, robotics

Planning

Algoritma Era Kompleksitas Penggunaan
STRIPS / PDDL 🔵 Classic O(exp) AI planning systems
FastForward (FF) 🟢 Modern O(n) AI planning benchmarks
RRT / RRT* 🟢 Modern O(n log n) Robot motion planning
PRM (Probabilistic Roadmap) 🟢 Modern O(n log n) Robot path planning

16. Bioinformatics

Sequence Analysis

Algoritma Era Kompleksitas Penggunaan
Smith-Waterman 🔵 Classic O(mn) DNA alignment, BLAST
Needleman-Wunsch 🔵 Classic O(mn) Protein alignment
BLAST 🟢 Modern O(mn/w) NCBI database search
Bowtie / BWA 🟢 Modern O(m) Genome sequencing alignment
HISAT2 🟢 Modern O(m log n) RNA-seq, transcriptomics
Hirschberg's Algorithm 🔵 Classic O(mn) Global alignment hemat memori
ClustalW 🟢 Modern O(n²) Phylogenetics, MSA
MUSCLE 🟢 Modern O(n² log n) Multiple sequence alignment

Assembly & Annotation

Algoritma Era Kompleksitas Penggunaan
OLC Assembly 🔵 Classic O(n²) Long-read genome assembly
De Bruijn Graph Assembly 🟢 Modern O(n) NGS genome assembly
Viterbi Algorithm 🔵 Classic O(T·K²) Hidden Markov Model, gene prediction
CRF (Conditional Random Field) 🟢 Modern O(T·K²) NER, gene annotation

Structural & Evolutionary

Algoritma Era Kompleksitas Penggunaan
Neighbor Joining 🔵 Classic O(n³) Evolutionary biology, phylogenetics
UPGMA / WPGMA 🔵 Classic O(n²) Phylogenetics
Rosetta 🟢 Modern O(n³) Protein design, drug discovery
Fitch's Algorithm 🔵 Classic O(N) Rekonstruksi status leluhur pada pohon filogenetik
AlphaFold2 🔴 Research O(n²) Protein structure prediction, drug discovery

Ringkasan Statistik

Kategori Jumlah Algoritma
Sorting & Ordering 18
Searching 19
Graph Algorithms 23
Dynamic Programming 16
Machine Learning 26
Deep Learning 27
Cryptography 22
Optimization 19
Compression & Coding 21
Number Theory & Math 18
Computational Geometry 15
String & Text Processing 16
Scheduling & Systems 17
Distributed Systems 21
AI & Decision Making 18
Bioinformatics 17
Total 313

Referensi & Sumber Lanjutan:

  • CLRS — Introduction to Algorithms (Cormen et al.)
  • Algorithm Design (Kleinberg & Tardos)
  • The Art of Computer Programming (Knuth)
  • Papers With Code — paperswithcode.com
  • NIST Post-Quantum Cryptography — csrc.nist.gov