ProjectsAlgorithms and problem solving

Algorithms

A growing reference of algorithm implementations, with parallel Python and C++ directories, explanatory notes and selected tests.

525 commits14,217 source lines

Counting scope & snapshot

All commits reachable from this default-branch revision, including merges and all authors. Physical source lines counted in each physical file, including native Astro components, tests, examples and parsed notebook code cells; excluding blanks, comments, dependencies, generated files, documentation and notebook outputs.

Counted with cloc 2.10. Revision ee9890aed7, observed . These are repository totals, not individually authored lines.

Role
To be supplied
Technologies
Python, C++, pytest
Impact
To be supplied
Project visualScreenshot or architecture diagram needed

Organization

The repository is organized by topic rather than by application. Python and C++ implementations cover searching and sorting, graph traversal and shortest paths, minimum spanning trees, string algorithms and tree-based structures.

Representative implementations

The Dijkstra implementation uses a priority queue and distance relaxation. String-matching examples include KMP, alongside Z and Aho–Corasick implementations. Data-structure directories include disjoint sets, tries, Fenwick trees, segment trees and balanced search trees.

Learning through implementation

Notes sit beside the code, including comparisons of minimum-spanning-tree approaches and explanations of sorting. The Python sorting directory includes pytest coverage; selected tree implementations also have tests.

Boundaries

This is an implementation and learning collection, not a single packaged algorithm library. Coverage and interfaces vary by topic. No performance benchmark, universal correctness guarantee or test-pass claim is made by this page.

Source

Repository and implementation.