Next Article in Journal
New Results on the Quasilinearization Method for Time Scales
Previous Article in Journal
Model-Based Adaptive Control of Bioreactors—A Brief Review
Previous Article in Special Issue
Optimizing Attribute Reduction in Multi-Granularity Data through a Hybrid Supervised–Unsupervised Model
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Algorithms for Densest Subgraphs of Vertex-Weighted Graphs

1
School of Engineering, Guangzhou College of Technology and Business, Foshan 510800, China
2
School of Computer Science and Cyber Engineering, Guangzhou University, Guangzhou 510006, China
*
Author to whom correspondence should be addressed.
Mathematics 2024, 12(14), 2206; https://doi.org/10.3390/math12142206
Submission received: 16 May 2024 / Revised: 28 June 2024 / Accepted: 11 July 2024 / Published: 14 July 2024
(This article belongs to the Special Issue Mathematical and Computing Sciences for Artificial Intelligence)

Abstract

:
Finding the densest subgraph has tremendous potential in computer vision and social network research, among other domains. In computer vision, it can demonstrate essential structures, and in social network research, it aids in identifying closely associated communities. The densest subgraph problem is finding a subgraph with maximum mean density. However, most densest subgraph-finding algorithms are based on edge-weighted graphs, where edge weights can only represent a single value dimension, whereas practical applications involve multiple dimensions. To resolve the challenge, we propose two algorithms for resolving the densest subgraph problem in a vertex-weighted graph. First, we present an exact algorithm that builds upon Goldberg’s original algorithm. Through theoretical exploration and analysis, we rigorously verify our proposed algorithm’s correctness and confirm that it can efficiently run in polynomial time O(n(n + m)log2n) is its temporal complexity. Our approach can be applied to identify closely related subgroups demonstrating the maximum average density in real-life situations. Additionally, we consistently offer an approximation algorithm that guarantees an accurate approximation ratio of 2. In conclusion, our contributions enrich theoretical foundations for addressing the densest subgraph problem.

1. Introduction

Data have exploded with the rapid development of computer technology and the Internet. In particular, relationships between people have become increasingly complex with the widely used social networking software. We can abstract entities in the world as vertices, such as people, social groups, and the environment. The relationship between entities can be abstracted to the edge. At last, the vertices and edges construct a network graph. The vertices in the graph are clustered together to form different dense subgraphs. They always contain valuable data, but it is challenging to analyze the network directly. Therefore, it is an effective method to analyze the densest subgraphs of the network.
Goldberg et al. [1] first proposed the idea of the maximum density subgraph of the undirected graph. Given an undirected graph G with n vertices, the density of a subgraph is the ratio of the sum of the edge weights to the number of vertices. The maximum density subgraph has the maximum density value. The task of identifying the maximum density subgraph is essentially the same as identifying an induced subgraph of maximum density in all subgraphs. Goldberg et. al used a polynomial time algorithm to solve this problem. At first, they constructed a network, then used the theory of the minimum cut to divide the network, and at last, solved the density subgraph problem using the binary method [1].
The problem of finding densest subgraphs has been the subject of extensive research. Many scientists have conducted numerous studies on it and have proposed a variety of polynomial time algorithms to solve this problem, as it is highly significant in research areas such as network analysis, web community inference, hypertext analysis, and the discovery of functions in complex biological networks [2,3,4,5,6]. Charikar gave a polynomial time algorithm based on linear programming (LP) and an approximation algorithm by iteratively deleting the vertex with the minimum degree in the remaining graph [7].
The dense k-subgraph problem is related to the densest subgraph problem, which is the problem of finding the densest subgraph with exact k vertices. The dense k-subgraph problem is well known as an NP-hard problem. Thus, some scientists proposed approximation algorithms for the dense k-subgraph problem. For example, Kortsarz and Peleg used a polynomial time approximation algorithm and showed its approximation ratio O(n0.3885) [8]. Feige and Seltzer proposed an approximation algorithm based on semi-definite programming (SDP) [9]. Then, Srivastav and Wolf presented an approximation algorithm based on SDP [10]. Both have the same ratio n/k. Kannan and Vinay proposed an approximation algorithm with approximation ratio O(log n) in a directed graph [11]. In 2001, Feige gave another O(log n)-approximation algorithm to solve the dense k-subgraph problem [12]. Bhaskara et al. proposed an O(n1/4)-approximation algorithm to detect high log densities [13].
In 2009, Andersen and Chellapilla [14] presented the densest at-least-k-subgraph problem (DalkS) and the densest at-most-k-subgraph problem (DamkS), which are about finding the densest subgraph of a size constraint undirected graph. They gave two approximation algorithms. One of the algorithms with an approximation ratio of 3 is the extension of Charikar’s greedy approximation algorithms. The other one with an approximation ratio of 2 is based on Gallo’s maximum flow algorithm [15]. Khuller and Saha also used an approximation algorithm based on the max-flow algorithm and another algorithm based on linear programming (LP) [16]. Both approximation algorithms are of an approximation ratio of 2. Chen et al. designed two approximation algorithms for DamkS [17], with approximation ratios of (n − 1)/(k − 1) and O(nδ) for some δ < 1/3, respectively. Chen et al. proved that DalkS is still polynomial time-solvable when k is bounded by some constant c [17]. An improved algorithm with better time complexity was proposed in Chen et al.’s other paper [18], in which a greedy approximation algorithm was also proposed for the densest subgraph with a specified subset problem. More results about applying the densest subgraphs can be found in paper [19]. In 2023, Hanaka introduced algorithms to solve the densest k-subgraph problem by utilizing structural graph parameters [20]. They demonstrated that the problem becomes fixed-parameter tractable (FPT) when parameterized by neighborhood diversity, block deletion number, distance-hereditary deletion number, and cograph deletion number. Additionally, they presented a 2-approximation algorithm for the densest k-subgraph.
In 2022, Chekuri et al. explored fast algorithms and structural aspects of the densest subgraph problem (DSG) through the concept of supermodularity [21]. They presented a simple flow-based algorithm that offers a 1 ε -approximation in O ˜ ( m / ε ) time for undirected graphs, where m is the number of edges. Additionally, they explored a peeling algorithm for the densest supermodular subset (DSS) problem. Finally, they extended the 2-approximation for the densest-at-least-k subgraph to the supermodular setting.
However, previous research has primarily focused on edge-weighted graphs, whereas real-world scenarios often involve multi-dimensional considerations. Therefore, this study introduces the problem of finding the densest subgraph in vertex-weighted graphs. How to find the densest subgraph in a vertex-weighted graph? In this paper, we introduce the densest subgraph problem of a vertex-weighted graph, and we propose a polynomial time algorithm for this problem. Our algorithm is an extension of Goldberg’s algorithm [1]. Here is an expanded description of our approach. First, given a vertex-weighted graph G, where D represents the density of an induced subgraph, we start by hypothesizing an initial guess g for D. Next, we construct a modified graph where edge weights are adjusted relative to g and utilize min-cut algorithms to partition it effectively. Subsequently, employing a binary search strategy, we identify the maximum density subgraph within G. Secondly, we introduce an additional contribution—a novel approximation algorithm with an approximation ratio of 2. This algorithm efficiently approximates the densest subgraph in vertex-weighted graphs, ensuring practical applicability in real-world scenarios.

2. Preliminaries

This paper refers to the main result as the “theorem” and the auxiliary result as the “lemma.” Lemmas are auxiliary results introduced to prove theorems. For example, Lemma 1 is used to prove Theorem 1.
In this section, we mainly introduce some basic concepts.
Definition 1.
The densest subgraph of a undirected graph.
Given an undirected graph G (V′) = (V′, E′), where V′ is the set of vertices and E′ is the set of edges. The induced subgraph G(V) = (V, E) is a subgraph that is induced from vertex V of G (V′). Let D(V) denote the density of G(V), which is equal to the number of edges over the number of vertices, i.e.,
D ( V ) = | E | | V |
The problem of the densest subgraph in a undirected graph is a computational problem to finding the induced subgraph that is of the maximum density.
Definition 2.
The densest subgraph of a vertex-weighted undirected graph.
Give a vertex-weighted undirected graph G (V′) = (V′, E′, ω′), where V′ is the set of vertices, E′ is the set of edges, and ω′ is a weighted function, ω: V′→N, where N is a natural number set. For the induced subgraph G(V) of vertex V, its density D(V) is defined as the number of edges over the sum of the weight of the vertices, i.e.,
D ( V ) = | E | | i V ω ( i ) |
When the weight of vertices is 1, the value of D(V) is equal to the number of edges divided by the number of vertices.
The problem of the densest subgraph of vertex-weighted undirected graph is a computational problem to find the induced subgraph with the maximum density from a vertex-weighted undirected graph.
Definition 3.
Minimum Cut. Given the undirected graph G = ( V , E ) , where V is the vertex set and V = {v1, v2, …, vn}. | V | is the number of vertices, | V | = n . E is the edge set. | E | is the number of edges, | E | = m , and there is a capacity value c(u, v) for any edge e = ( u , v ) , ( u , v ) E .
(1)
A cut refers to splitting the vertex set V into two sets V1 and V2. A cut edge set O, O = { ( v 1 , v 2 ) E : v 1 V 1 , v 2 V 2 } . The capacity of a cut is the sum of capacities of the edge set in this cut, c ( V 1 , V 2 ) = { c ( v 1 , v 2 ) | v 1 V 1 , v 2 V 2 } .
(2)
Given two vertices  s , t V , s-t cut is to divide V into two sets, and s and t belong to two different sets  V 1 , V 2 ,  { ( V 1 , V 2 ) | s V 1 , t V 2 } .
The minimum cut problem is to find the s-t cut with the minimum capacity.

3. The Algorithm of Finding the Densest Subgraph in a Vertex-Weighted Graph

In this section, we propose a polynomial time algorithm for the densest subgraph in a vertex-weighted graph. By extending Goldberg’s algorithm [1], we give a polynomial time algorithm. Our idea is as follows. Given a vertex-weighted graph G, let D be the maximum density of an induced subgraph. At first, we make a guess value g of D. Then, we try to construct a network whose edge weights relate to g and divide it using the min-cut algorithms. At last, we find the maximum density subgraph of G by means of a binary search method.

3.1. Undirected Graph Construction by a Guess Value

Given a vertex-weighted undirected graph G(V) = (V, E, ω), where ω is a weight function assigning a positive integer weight to each vertex: V→N, where N is the set of natural numbers. Assume that the degree of the vertex i is d ( i ) and the weight of vertex is ω ( i ) . Let |V| = n and |E| = m. Let D be the maximum density of the induced subgraphs. When we make a guess value g of D, we construct the graph Gg = (Vg, Eg) which is related to g. This is an extension of Goldberg’s algorithm [1].
We add source u and sink v to vertex sets of G. The capacity of edge sets is as follows. For any ( i , j ) , an undirected edge between vertex i and j of G, the capacity c ( i , j ) of ( i , j ) is 1. The capacity of edge ( u , i ) is m, c ( u , i ) = m , i V . The capacity of edge ( i , v ) is m + 2 g ω ( i ) d ( i ) .
Gg = (Vg, Eg) is as follows.
V g = V { u , v } E g = { ( i , j ) | { i , j } E } { ( u , i ) | i V } { ( i , v ) | i V } c ( i , j ) = 1 { i , j } E c ( u , i ) = m i V c ( i , v ) = m + 2 g × ω ( i ) d ( i ) i V

3.2. Establish a Relationship with g and a Minimum Cut

We split the Vg into two sets S and T. If u S , v T , the cut (S, T) is an s-t cut. Let V 1 = S { u } , V 2 = T { v } . If |V1| = 0, the capacity of this cut c ( S , T ) = m | V | . Otherwise, the capacity of this cut is c ( i , j ) , where i ∈ V1, j ∈ V2. Let D1 be the density of the induced vertex-weighted subgraph from V1, so we have the following conclusion:
c ( S , T ) = m | V | + 2 | V 1 | ( g D 1 )
The reason is as follows:
c ( S , T ) = i S , j T c ( i , j ) = j V 2 c ( u , j ) + i V 1 c ( i , v ) + i V 1 , j V 2 c ( i , j ) = m | V 2 | + ( m | V 1 | + 2 g i V 1 ω ( i ) i V 1 d ( i ) ) + i V 1 , j V 2 1 = m | V | + | V 1 | 2 ( g ( i V 1 d ( i ) i V 1 , j V 2 1 2 i V 1 ω ( i ) ) )
i V 1 d ( i ) i V 1 , j V 2 1 has twice the number of edges of the induced vertex-weighted subgraph from V1, so:
D 1 = i V 1 d ( i ) i V 1 , j V 2 1 2 i V 1 ω ( i )
Hence: c ( S , T ) = m | V | + 2 | V 1 | ( g D 1 ) . We have the following result according to the similar argument of Goldberg’s paper [1].
Lemma 1.
Let cut (S,T) be a min-cut. If | V 1 | 0 , then g D ; if V 1 = 0 , ( i . e . S = { u } ) , then g D .
Proof of Lemma 1.
Since  | V 1 | 0 , there is some flow or capacity contributing to the cut, and because (S, T) is a min-cut, the total flow or capacity g that crosses the cut cannot exceed capacity D. This is because if g were greater than D, it would imply that there exists a smaller cut with capacity less than g, contradicting the minimality of the cut (S, T). Therefore, g D . Conversely, V 1 = 0 ; the capacity g that defines the min-cut (S, T) must be composed entirely of other edges’ capacities. Given the definition of a min-cut, capacity g must be at least D. If g were less than D, it would imply that there is a cut with a capacity smaller than the established minimal capacity D, which is a contradiction. Therefore, g D . □

3.3. Algorithm Description

Before describing the algorithm, let us prove the results below.
Lemma 2.
If G′ is a subgraph of the vertex-weighted undirected graph G and the density of G′ is D′, and the density of the other subgraph is more than or equal to D + 1 N ( N + 1 ) , where N is the sum of all weights of the vertices of G, then G′ is the densest subgraph of G.
Proof of Lemma 2.
Suppose that the maximum density of an undirected graph G is D. D is the ratio of the number of edges and the sum of the weight of the vertices, so
D { m n | 0 m m , min ( ω ( i ) ) n N , N = i = 1 n ω ( i ) }
D is between 0 and m min ( ω ( i ) ) . If the difference between two values of D is ∆,
Δ = m 1 n 1 m 2 n 2 = m 1 n 2 m 2 n 1 n 1 n 2
If n 1 = n 2 , then | Δ | 1 N . Otherwise, n 1 n 2 N ( N 1 ) , and then | Δ | 1 N ( N 1 ) . So, the minimum difference between two values of D is 1 N ( N 1 ) . □
Our algorithm is given below.
x 0 ; y m   min ( ω ( i ) ) ; V 1 e m p t y ; w h i l e   ( y x 1 N ( N 1 ) )   {    g x + y 2    c o n s t r u c t   G g = ( V g , E g ) ;    f i n d   min - c u t ( S , T ) ;    i f ( S = { s } )       y g ;    e l s e   {       x g ;       V 1 S { s } ;       } } r e t u r n   ( d e n s e s t   s u b g r a p h   o f   G   i n d u c e d   b y   V 1 )
G′ is a subgraph of undirected graph G; V1 is a set of vertices of G′; D′ is the density of G′, given two guess values, x and y, which are the highest and the lowest values of D′, i.e., D [ x , y ] . g is a guess value of D′. N is the sum of the vertex weights of graph G. Lemma 2 tell us that if y x + 1 N ( N 1 ) , then G′ is the densest subgraph. So it is a loop condition for a while loop. In the while loop, we first assign the value x + y 2 to g, and next construct an undirected graph Gg, typically used to represent a graph with nodes and edges, where each edge has a specific capacity. Nodes represent the entities or vertices in the graph. Edges represent the connections or links between nodes. Then, we divide N and find the Min-Cut (S, T), using the Stoer–Wagner algorithm [22] to get the maximum flow, and then derive the min-cut from the residual graph. Then, we use Lemma 1 to determine the value of g. Finally, the return is the densest subgraph of G.
Theorem 1.
The running time of the algorithm is O(n(n + m)log2 n).
Proof of Theorem 1.
In the algorithm, the time of the while loop is O ( log n ) . In the loop, we define a function K(v,e) as the time to find the min-cut in undirected graph with v vertices and e edges. The graph has n + 2 vertices and 2(m + n) edges. In the time complexity, we can ignore constants, because they do not affect the growth rate of the function. So the time of finding min-cut is O(K(n, n + m)log n). Hence, the running time of the algorithm is O ( K ( n , n + m ) log n ) . The time of Sleator and Tarjan’s algorithm [23] for the minimum-cut problem is O(|V||E|log |V|). Sleator and Tarjan’s algorithm refers to the Dynamic Trees data structure, also known as Link/Cut Trees. This data structure is used to efficiently maintain and manipulate a forest of trees. So our algorithm time complexity is O(n(n + m)log2 n). □

4. An Approximation Algorithm for DS in a Vertex Weighted Graph

In [7], Charikar used a greedy algorithm to compute an approximate solution of the densest subgraph, in which he repeatedly removed a vertex of minimum weighted degree. Similarly, we use a greedy strategy to compute an approximate solution for DS as follows (Algorithm 1).
Algorithm 1: The approximation algorithm for DS in a vertex weighted graph
Input: G ( V , E , ω ) , x, y, g
Output: The approximation of the densest subgraph
The process is as follows:
(1) Let G = (V, E) be a vertex weighted graph, |V| = n. Let G1 = G;
(2) For i = 1 to n {
(3)   Find a vertex v i V such that ω ( G , v i ) c i is the minimum, then deleting vi;
(4)   Let Gi + 1 = Gi − {vi};
(5)  };
(6)  From the graphs G1, …, Gn, find a graph Gi such that D(Gi) is the maximum, output Gi.
In the following, we show the approximation ratio of the algorithm.
We assign each edge (i, j) to either i or j. For a vertex, let:
r ( i ) = e d g e s e a s s i g n e d t o i ω ( e ) c i
and r max = max i { r ( i ) } .
We show d(S) ≤ r max as follows.
Lemma 3.
max S V   d ( S ) r max
Proof of Lemma 3.
Suppose S is the set such that f(S) is maximum, where f ( S ) = | E ( S ) | | S | . Since each edge must be assigned to one vertex, W ( G ( S ) ) = v i S ω ( G ( S ) , v i ) . So,
d ( S ) = W ( G ( S ) ) v i S c i v i S ω ( G ( S ) , v i ) v i S c i v i S ω ( G , v i ) v i S c i v i S r max c i v i S c i   r max
Hence, max d S V ( S ) r max . □
During the execution of the greedy algorithm, when a vertex is removed from S, the vertex is assigned all edges that go from the vertex to the rest of the vertices in S. Let r max be defined as before. Then, we can get the following conclusion.
Lemma 4.
If v max is the maximum value of d(S) for all sets S obtained in this process of greedy algorithm, then  r max 2 v max .
Proof of Lemma 4.
Consider a single iteration of the greedy algorithm. Suppose S is the vertex set { v i 1 v i s } . v min is the selected vertex such that ω ( G ( S ) , v min ) c min is the minimum. Then,
ω ( G ( S ) , v min ) c min v i S ω ( G ( S ) , v i ) v i S c i   = 2 E ( G ( S ) ) v i S c i = 2 d ( S )   2 v max
Hence, r max 2 v max . □
In the following, we get the approximation ratio.
Theorem 2.
The approximation algorithm has an approximation ratio of 2.
Theorem 3.
The running time of the approximation algorithm is O(n + m).
Proof of Theorem 3.
Assume that G is of n vertices and the number of edges is m. At step (3), its time of finding vi and deleting vi is O(n). Using the adjacency list, when deleting vi, the degrees of its adjacency vertices are updated. For each updating, its time is O(m). Hence, the total time is O(n + m). □

5. Conclusions

This paper presents the notion of the densest subgraph in undirected graphs and vertex-weighted graphs. This introduction provides a foundation for gaining a more profound comprehension of graph structures, particularly within the framework of weighted networks. Furthermore, we introduce an exact algorithm that expands upon Goldberg’s algorithm to identify the densest subgraph within a graph with weighted vertices. This development is significant as it enables a more precise identification of critical subgraphs in complex networks, taking into account vertex weights. Additionally, we suggest an approximation algorithm as an alternative solution that balances computational efficiency and solution accuracy. This algorithm ensures an approximation ratio of 2, making it suitable for limited computational resources or requiring rapid approximations.
Researchers and practitioners can obtain valuable information about the network’s most influential or closely connected organizations by detecting the most compact subgraph. This knowledge is vital for comprehending network dynamics, forecasting actions, and making well-informed judgments. Our future work will focus on applying these algorithms to directed graphs and examining their integration with deep-learning approaches to enhance graph analysis capabilities.

Author Contributions

Conceptualization, Z.L. and W.C.; methodology, Z.L. and W.C.; validation, F.L., K.Q. and J.W.; formal analysis, F.L., K.Q. and J.W.; investigation, Z.L.; writing—original draft preparation, Z.L.; writing—review and editing, W.C.; supervision, W.C.; project administration, W.C.; funding acquisition, W.C. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by the Joint Project of University and City in Guangzhou Science and Technology Bureau, grant number SL2022A03J00903.

Data Availability Statement

There are no data in our research since it is theoretical paper.

Conflicts of Interest

The authors declare no conflicts of interest.

Abbreviations

The following abbreviations are used in this manuscript: Q.E.D. (Quod Erat Demonstrandum): Denotes the end of a proof, commonly symbolized by “□”. I.e., (id est): Means “that is” or “in other words”.

References

  1. Goldberg, A. Finding a Maximum Density Subgraph, Technical Report UCB/CSB 84/171; Department of Electrical Engineering and Computer Science, University of California: Berkeley, CA, USA, 1984. [Google Scholar]
  2. Gibson, D.; Kleinberg, J.; Raghavan, P. Inferring web communities from Web topology. In Proceedings of the Ninth ACM Conference on Hypertext and Hypermedia: Links, Objects, Time and Space—Structure in Hypermedia Systems, Pittsburgh, PA, USA, 20–24 June 1998; pp. 225–234. [Google Scholar]
  3. Gibson, D.; Kumar, R.; Tomkins, A. Discovering large dense subgraphs in massive graphs. In Proceedings of the 31st International Conference on Very Large Data Bases, Trondheim, Norway, 30 August–2 September 2005. [Google Scholar]
  4. Hu, H.; Yan, X.; Huang, Y.; Han, J.; Zhou, X.J. Mining coherent dense subgraphs across massive biological networks for functional discovery. Bioinformatics 2005, 21, 213–221. [Google Scholar] [CrossRef] [PubMed]
  5. Kleinberg, J. Authoritative sources in hypertext linked environments. In Proceedings of the 9th Annual ACM–SIAM Symposium on Discrete Algorithms, San Francisco, CA, USA, 25–27 January 1998; pp. 668–677. [Google Scholar]
  6. Kumar, R.; Raghavan, P.; Rajagopalan, S.; Tomkins, A. Trawling the Web for emerging cyber-communities. Comput. Netw. 1999, 31, 1481–1493. [Google Scholar] [CrossRef]
  7. Charikar, M. Greedy approximation algorithms for finding dense components in a graph. In Third International Workshop on Approximation Algorithms for Combinatorial Optimization; Lecture Notes in Computer Science; Springer: Berlin, Germany, 2000; Volume 1913, pp. 84–95. [Google Scholar]
  8. Kortsarz, G.; Peleg, D. On choosing a dense subgraph. In Proceedings of the 34th Annual IEEE Symposium on Foundations of Computer Science, Palo Alto, CA, USA, 3–5 November 1993; pp. 692–701. [Google Scholar]
  9. Feige, U.; Seltser, M. On the Densest k-Subgraph Problems, Technical Report: CS97-16; Department of Applied Mathematics and Computer Science: Eindhoven, The Netherlands, 1997. [Google Scholar]
  10. Srivastav, A.; Wolf, K. Finding dense subgraph with semi-definite programming. In Approximation Algorithms for Combinatorial Optimizationl; Jansen, K., Rolim, J., Eds.; Springer: Berlin/Heidelberg, Germany, 1998; pp. 181–191. [Google Scholar]
  11. Kannan, R.; Vinay, V. Analyzing the Structure of Large Graphs; Universität Bonn: Bonn, Germany, 1999. [Google Scholar]
  12. Feige, U.; Kortsarz, G.; Peleg, D. The dense k-subgraph problem. Algorithmica 2001, 29, 410–421. [Google Scholar] [CrossRef]
  13. Bhaskara, A.; Charikar, M.; Chlamtac, E.; Feige, U.; Vijayaraghavan, A. Detecting high log-densities: An O(n1/4) approximation for densest k-subgraph. In Proceedings of the Symposium on Theory of Computing, Cambridge, MA, USA, 5–8 June 2010; pp. 201–210. [Google Scholar]
  14. Andersen, R.; Chellapilla, K. Finding dense subgraphs with size bounds. In International Workshop on Algorithms and Models for the Web-Graph; Springer: Berlin/Heidelberg, Germany, 2009; pp. 25–37. [Google Scholar]
  15. Gallo, G.; Grigoriadis, M.; Tarjan, R. A fast parametric maximum flow algorithm and applications. SIAM J. Comput. 1989, 18, 30–55. [Google Scholar] [CrossRef]
  16. Khuller, S.; Saha, B. On finding dense subgraphs. In International Colloquium on Automata, Languages, and Programming; Springer: Berlin/Heidelberg, Germany, 2009; pp. 597–608. [Google Scholar]
  17. Chen, W.; Samatova, N.F.; Stallmann, M.F.; Hendrix, W.; Ying, W. On size-constrained minimum s-t cut problems and size-constrained dense subgraph problems. Theor. Comput. Sci. 2016, 609, 434–442. [Google Scholar] [CrossRef]
  18. Chen, W.; Peng, L.; Wang, J.; Li, F.; Tang, M. Algorithms for the Densest Subgraph with at Least k Vertices and with a Specified Subset. In Proceedings of the 9th Annual International Conference on Combinatorial Optimization and Applications (COCOA 2015), Houston, TX, USA, 18–20 December 2015; pp. 566–573. [Google Scholar]
  19. Luo, W.; Ma, C.; Fang, Y.; Lakshmanan, L.V.S. A Survey of Densest Subgraph Discovery on Large Graphs. arXiv 2023, arXiv:2306.07927. [Google Scholar]
  20. Hanaka, T. Computing densest k-subgraph with structural parameters. J. Comb. Optim. 2023, 45, 39. [Google Scholar] [CrossRef]
  21. Chekuri, C.; Quanrud, K.; Torres, M.R. Densest subgraph: Supermodularity, iterative peeling, and flow. In Proceedings of the 2022 Annual ACM-SIAM Symposium on Discrete Algorithms (SODA), Alexandria, VI, USA, 9–12 January 2022; Society for Industrial and Applied Mathematics: Philadelphia, PA, USA, 2022; pp. 1531–1555. [Google Scholar]
  22. Stoer, M.; Wagner, F. A simple min-cut algorithm. J. ACM 1997, 44, 585–591. [Google Scholar] [CrossRef]
  23. Sleator, D.D.; Tarjan, R.E. Self-adjusting binary search trees. J. ACM 1985, 32, 652–686. [Google Scholar] [CrossRef]
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Liu, Z.; Chen, W.; Li, F.; Qi, K.; Wang, J. Algorithms for Densest Subgraphs of Vertex-Weighted Graphs. Mathematics 2024, 12, 2206. https://doi.org/10.3390/math12142206

AMA Style

Liu Z, Chen W, Li F, Qi K, Wang J. Algorithms for Densest Subgraphs of Vertex-Weighted Graphs. Mathematics. 2024; 12(14):2206. https://doi.org/10.3390/math12142206

Chicago/Turabian Style

Liu, Zhongling, Wenbin Chen, Fufang Li, Ke Qi, and Jianxiong Wang. 2024. "Algorithms for Densest Subgraphs of Vertex-Weighted Graphs" Mathematics 12, no. 14: 2206. https://doi.org/10.3390/math12142206

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop