jwalsh / jwalsh/hy-algorithms

Implement advanced graph algorithms

Open
#25 0 comments 0 reactions 0 assignees View on GitHub
difficulty:hard graph
Dominant language
Hy
Stars
2
Forks
0
PR merge metrics
No merged PRs in 30d

Description

Create implementations for advanced graph algorithms:

## Network flow algorithms:
- Ford-Fulkerson algorithm
- Edmonds-Karp algorithm
- Push-relabel algorithm
- Bipartite matching
- Minimum cost flow

## Connectivity algorithms:
- Strongly connected components (Kosaraju's algorithm)
- Articulation points and bridges
- Eulerian path and circuit
- Hamiltonian path
- Maximum bipartite matching

## Shortest path algorithms:
- A* search algorithm
- Johnson's algorithm
- All-pairs shortest path algorithms
- K shortest paths

## Requirements:
- Provide detailed complexity analysis
- Create visualization helpers
- Include comprehensive test cases
- Document practical applications

This collection will extend the basic graph algorithms with more advanced techniques used in network optimization, robotics, and artificial intelligence.

Contributor guide

Open the contributing guide

Research direction

No files, tests, or entry points are named. Start by reviewing the repository's existing basic graph algorithms, then determine how the requested network flow, connectivity, and shortest-path algorithms should fit alongside them. Done requires the listed algorithms, complexity analysis, visualization helpers, comprehensive tests, and practical-application documentation.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
data
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.