{"id":15902561,"url":"https://github.com/nikolasent/clique-bron-kerbosch","last_synced_at":"2025-03-20T19:31:24.522Z","repository":{"id":205011054,"uuid":"84984634","full_name":"NikolasEnt/Clique-Bron-Kerbosch","owner":"NikolasEnt","description":"Bron–Kerbosch algorithm implementation for finding maximal cliques in an undirected graph with OpenGL visualization","archived":false,"fork":false,"pushed_at":"2017-03-31T00:18:24.000Z","size":435,"stargazers_count":8,"open_issues_count":0,"forks_count":5,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-10-07T11:41:39.964Z","etag":null,"topics":["algorithm","bron-kerbosch-algorithm","clique","graph","maximal-cliques","maximal-cliques-finding"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NikolasEnt.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2017-03-14T18:37:58.000Z","updated_at":"2024-09-17T13:34:27.000Z","dependencies_parsed_at":null,"dependency_job_id":"d146dbc8-8be4-4838-a483-0075d1fc04b9","html_url":"https://github.com/NikolasEnt/Clique-Bron-Kerbosch","commit_stats":null,"previous_names":["nikolasent/clique-bron-kerbosch"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NikolasEnt%2FClique-Bron-Kerbosch","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NikolasEnt%2FClique-Bron-Kerbosch/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NikolasEnt%2FClique-Bron-Kerbosch/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NikolasEnt%2FClique-Bron-Kerbosch/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NikolasEnt","download_url":"https://codeload.github.com/NikolasEnt/Clique-Bron-Kerbosch/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":221799171,"owners_count":16882380,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["algorithm","bron-kerbosch-algorithm","clique","graph","maximal-cliques","maximal-cliques-finding"],"created_at":"2024-10-06T11:41:41.141Z","updated_at":"2024-10-28T07:20:58.403Z","avatar_url":"https://github.com/NikolasEnt.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# The maximal cliques finding with Bron–Kerbosch algorithm\n\nThe project code implements the Bron–Kerbosch algorithm for finding maximal cliques in an undirected graph and visualize results.\n\n![Title animated image](readme_img/title.gif)\n\nThe algorithm uses branch and bound approach for efficient maximal cliques finding. For details see original [publication](http://dl.acm.org/citation.cfm?doid=362342.362367) by Bron C., Kerbosh J. (1973). Visualisation was realized with the GLFW library.\n\n*Originally, the project was developed in Dec 2014.*\n\n## Content of this repo\n\n- `scr/test/main.c` code for testing without visualisation\n- `scr/vis/main.cpp` final project code\n- `examples` directory with sample input files graphs for quick testing\n- `clique.exe` precompiled project code.\n\n## How to run the code\n### Precompiled program\nFor quick start you can run the precompiled `clique.exe` file (with two arguments: paths to the input and output files) as following:\n\n```\nclique.exe examples\\graf2.txt output2.txt\n```\n\nIt was tested on Win 7/8/10.\n\n### Source code\nFeel free to examine the sourse code in the `scr` directory and compile it on your own with your favourite compiler. It will need the open [GLFW](http://www.glfw.org/) library.\n\n### The input file format\n\nThe input file should be an ordinary text file. The first row should contain only one number - number of vertices. **64** vertices is the maximum! The following lines should describe the graph connectivity. 1 in i-th row on j-th place means that the i-th vertices is connected with the j-th (j\u003ei). Here it is an example (*graf2.txt*):\n\n```\n10\n1 1 1 1 1 0 0 0 0 \n1 1 1 0 1 0 0 0 \n1 1 0 0 1 0 0 \n1 0 0 0 1 0 \n0 0 0 0 1 \n1 1 1 1  \n1 1 1 \n1 1 \n1 \n```\n\n![example graf2.txt](readme_img/1.png)\n\nThe first vertice is marked in color. Vertices are numbered counterclockwise.\n\n### The output file format\n\nIn the described above example there are 2 same size maximal cliques. They are printed out in the output file as following:\n\n```\nFull connected group:\n1 2 3 4 5 \n6 7 8 9 10 \nTotal 2 groups with 5 vertices.\n```\n\nPress *Enter* button to see results visualisation (or to switch between maximal cliques if there is more then one solutio) and *Escape* to close the program.\n\n![Clique 1](readme_img/2.png)\n![Clique 2](readme_img/3.png)\n\n## Authors\n- __Nikolay Falaleev__ - *The main author* Github: [NikolasEnt](https://github.com/NikolasEnt), Twitter: [@NFalaleev](https://twitter.com/NFalaleev)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnikolasent%2Fclique-bron-kerbosch","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnikolasent%2Fclique-bron-kerbosch","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnikolasent%2Fclique-bron-kerbosch/lists"}