- 
          
- 
                Notifications
    You must be signed in to change notification settings 
- Fork 342
Bron kerbosch max cliques #274
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Bron kerbosch max cliques #274
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR implements the Bron-Kerbosch algorithm for finding all maximal cliques in an undirected graph, along with an extensive collection of graph algorithms and dynamic programming solutions in R.
Key changes:
- Implementation of Bron-Kerbosch algorithm for maximal clique detection
- Addition of 15+ graph algorithms (DFS, BFS, Dijkstra, Floyd-Warshall, Prim, Kruskal, etc.)
- Addition of multiple dynamic programming algorithms (LIS, LCS, Knapsack, Coin Change, etc.)
- Addition of machine learning documentation and empty directory structures
Reviewed Changes
Copilot reviewed 138 out of 218 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description | 
|---|---|
| graph_algorithms/bron_kerbosch_max_cliques.r | Implements Bron-Kerbosch algorithm for finding maximal cliques | 
| graph_algorithms/*.r | Multiple graph algorithm implementations (DFS, BFS, Dijkstra, Floyd-Warshall, Prim, Kruskal, topological sort, etc.) | 
| dynamic_programming/*.r | Dynamic programming algorithms (LIS, LCS, Knapsack, Coin Change, Matrix Chain, etc.) | 
| kruskal_mst.r | Duplicate Kruskal implementation in root directory | 
| documentation/.md/.html | Machine learning documentation files with error outputs | 
| machine_learning/README.md | Tutorial links for ML in R | 
| data_mining/.gitignore | Empty .gitignore file | 
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You have changed 218 files, check your changes
Algorithm: Bron–Kerbosch
Purpose: Finds all maximal cliques in an undirected graph.
Theory: Uses recursive backtracking with three sets:
R – currently growing clique
P – potential vertices to add
X – vertices already processed
Time Complexity: Exponential in worst case; optimal for sparse graphs.
Space Complexity: O(V + E) for adjacency list.
Input: Undirected graph as adjacency list.
Output: List of all maximal cliques.