AI 24/25 Project Software
Documentation for the AI 24/25 course programming project software
Loading...
Searching...
No Matches
max_cliques.h
1#ifndef ALGORITHMS_MAX_CLIQUES_H
2#define ALGORITHMS_MAX_CLIQUES_H
3
4#include <vector>
5
6namespace max_cliques {
7/* Implementation of the Max Cliques algorithm by Tomita et al. See:
8
9 Etsuji Tomita, Akira Tanaka and Haruhisa Takahashi, The Worst-Case
10 Time Complexity for Generating All Maximal Cliques. Proceedings of
11 the 10th Annual International Conference on Computing and
12 Combinatorics (COCOON 2004), pp. 161-170, 2004.
13
14 In the paper the authors use a compressed output of the cliques,
15 such that the algorithm is in O(3^{n/3}).
16
17 This implementation is in O(n 3^{n/3}) because the cliques are
18 output explicitly. For a better runtime it could be useful to
19 use bit vectors instead of vectors.
20 */
21extern void compute_max_cliques(
22 const std::vector<std::vector<int>> &graph,
23 std::vector<std::vector<int>> &max_cliques);
24}
25
26#endif