williamfiset/algorithms

A collection of algorithms and data structures

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 44 minutes ago
Added to GitGenius on September 3rd, 2026
Created on March 18th, 2017
Open Issues & Pull Requests: 48 (+0)
GitHub issues: Enabled
Number of forks: 4,513
Total Stargazers: 18,737 (+0)
Total Subscribers: 404 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 910.5 days
Mean response time: 1578.8 days
90th percentile: 3056.0 days
Tracked items: 42

How this project is maintained

Around half of the issues opened in the past year never receive a reply. Only 7% of issues opened in the past year have been closed. Three people close 100% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 6
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 1,147 days
Stale 30+ days: 6
Stale 90+ days: 6

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • Geometry (8)
  • Graph theory (8)
  • Network flow (5)
  • Data Structure (3)
  • Dynamic programming (2)
  • Linear algebra (1)
  • Machine learning (1)
  • enhancement (1)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

Algorithms is a collection of algorithms and data structures implemented in Java that demonstrates how to correctly implement common computational techniques in simple and elegant ways.

The repository addresses the need for clear reference implementations of fundamental algorithms and data structures by providing working code examples alongside educational resources. Many implementations include companion video explanations to help developers understand not just the code but the underlying concepts. The project covers a broad range of topics including graph theory, dynamic programming, sorting, searching, geometry, and network flow algorithms like Dijkstra's algorithm, maximum flow, and solutions to the traveling salesman problem.

This collection serves as a learning resource and reference for developers studying algorithms rather than as a production library to integrate into projects. It works best for someone building foundational knowledge in computer science or reviewing implementations before writing their own optimized versions for specific use cases. The repository uses Bazel as its build system, though it also supports compilation and execution with only the JDK for those who prefer not to adopt an additional build tool.

The project receives infrequent responses to issues and pull requests, with weeks or longer commonly passing before initial engagement. Work in the issue tracker concentrates on three areas: geometry, graph theory, and network flow algorithms, suggesting these domains receive the most active development attention.