Program Listing for File GraphClusteringTools.hpp

Return to documentation for file (include/networkit/community/GraphClusteringTools.hpp)

/*
 * GraphClusteringTools.hpp
 */

#ifndef NETWORKIT_COMMUNITY_GRAPH_CLUSTERING_TOOLS_HPP_
#define NETWORKIT_COMMUNITY_GRAPH_CLUSTERING_TOOLS_HPP_

#include <networkit/graph/Graph.hpp>
#include <networkit/structures/Partition.hpp>

namespace NetworKit {

namespace GraphClusteringTools {

float getImbalance(const Partition &zeta);

float getImbalance(const Partition &zeta, const Graph &graph);

Graph communicationGraph(const Graph &graph, Partition &zeta);

edgeweight weightedDegreeWithCluster(const Graph &graph, const Partition &zeta, node u, index cid);

bool isProperClustering(const Graph &G, const Partition &zeta);

bool isSingletonClustering(const Graph &G, const Partition &zeta);

bool isOneClustering(const Graph &G, const Partition &zeta);

bool equalClusterings(const Partition &zeta, const Partition &eta, Graph &G);

} // namespace GraphClusteringTools

} // namespace NetworKit

#endif // NETWORKIT_COMMUNITY_GRAPH_CLUSTERING_TOOLS_HPP_