All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
CutClustering.h
Go to the documentation of this file.
1 #ifndef CUTCLUSTERING_H
2 #define CUTCLUSTERING_H
3 
5 
6 namespace NetworKit {
7 
14 public:
23  CutClustering(const Graph& G, edgeweight alpha);
24 
31  virtual void run() override;
32 
36  virtual std::string toString() const override;
37 
51  static std::map<edgeweight, Partition> getClusterHierarchy(const Graph& G);
52 private:
53 
57  static void clusterHierarchyRecursion(const Graph &G, edgeweight lower, Partition lowerClusters, edgeweight upper, Partition upperClusters, std::map< edgeweight, Partition > &result);
58  edgeweight alpha;
59 };
60 
61 } // namespace NetworKit
62 
63 #endif // CUTCLUSTERING_H
static std::map< edgeweight, Partition > getClusterHierarchy(const Graph &G)
Get the complete hierarchy with all possible parameter values.
Definition: CutClustering.cpp:82
CutClustering(const Graph &G, edgeweight alpha)
Initialize cut clustering algorithm with parameter alpha.
Definition: CutClustering.cpp:14
Implements a partition of a set, i.e.
Definition: Partition.h:31
Cut clustering algorithm as defined in Flake, Gary William; Tarjan, Robert E.
Definition: CutClustering.h:13
const Graph & G
Definition: CommunityDetectionAlgorithm.h:57
Partition result
Definition: CommunityDetectionAlgorithm.h:58
virtual void run() override
Apply algorithm to graph.
Definition: CutClustering.cpp:16
Abstract base class for community detection/graph clustering algorithms.
Definition: CommunityDetectionAlgorithm.h:20
A graph (with optional weights) and parallel iterator methods.
Definition: Graph.h:79
virtual std::string toString() const override
Definition: CutClustering.cpp:241
double edgeweight
Definition: Globals.h:24