^{2}

^{1}

^{3}

^{4}

^{5}

^{4}

^{6}

^{7}

The authors have declared that no competing interests exist.

Conceived and designed the experiments: TW YZ FC HT YT SP. Performed the experiments: TW YZ FC HT YT SP. Analyzed the data: TW YZ FC HT YT SP. Contributed reagents/materials/analysis tools: TW YZ FC HT YT SP. Wrote the paper: TW YZ FC HT YT SP.

The problem of finding _{1}, _{2},…, _{h}}, where each _{i} is maximized, such that for any two vertices _{i}, there are

Graph connectivity is a fundamental problem in computer science, which has many background applications in the real world. For example, reliability is one of the major concerns in communications networks: if a network is reliable, the network would still work when some nodes or edges fail. Reliability in communication networks can be represented by the connectivity between each pair of nodes. In social networks, computing the closeness among people is a very important problem, which also relates to the connectivity of the networks. There are many other applications which are related to the connectivity of networks, e.g., finding web pages of high commonality in internet searching; finding protein complexes and gene clusters in computational biology, etc.

In theoretical computer science, graph connectivity has been well studied for more than forty years. It has a strong relationship with the problems of maximal network flow and minimal cut.

Given an _{c}, which is a subset of _{c} disconnects

Instead of just determining whether the entire graph

For a directed graph _{uv} be the maximum number of edge-disjoint directed paths from _{vu} be the maximum number of edge-disjoint directed paths from _{uv}, _{vu}}. Notice that the directed paths from _{uv} and _{vu} may be different. A

An

Finding

For

For

For

For general ^{2}) time. Nagamochi and Watanabe [^{2}∣^{2}) for undirected graphs. This result is also based on an interesting observation: if the cardinality of a cut (

Since the edge connectivity of two vertices _{T}), where each edge (_{T} has a weight which represents the cardinality of the minimum (

Previous works focused on finding the

If the capacity of each edge is regarded as one, computing ^{3}) time algorithm proposed by Goldberg and Tarjan [^{5}) time algorithm to get the min-cut of any two vertices. The other method is to use the global min-cut algorithm proposed by Stoer and Wagner [^{2} log ^{2}^{3} log

In this paper, we give a simple algorithm to find the ^{3}). Furthermore, any improvement made on

After the auxiliary graph is constructed, for any value of

In Section 2, a data structure, called

It is well-known that the set of

Owing to this hierarchical structure of _{h} be the edgeless spanning forest of _{h} (each of which consists of a single vertex). Let _{h−1} be a spanning forest of _{h}. Then the collection of all (_{h−1}. In general, for _{k+1} be a spanning forest of _{k+1}. Let _{k} be a spanning forest of _{k+1}. Then the collection of all _{k}.

_{A}) is a weighted undirected tree, which represents the edge connectivity among vertices in

In the next section, we shall explain how to construct the auxiliary graph and how to generate the collection of all

To determine the weights of the edges in the auxiliary graph, we can use any

Since the max-flow algorithms run on directed graphs only, if the input graph

In procedure C

Randomly pick a vertex

(

(

Add edge (

C

C

After the auxiliary graph

After executing Procedure C

_{1} = _{2} = _{1} ≤ _{2}, thus, the connectivity between _{1} and from Procedure C

_{A}). Then

Without loss of generality, assume we determine the value of

If

Otherwise,

When ∣

Consider ∣

Next, to prove that the connectivity between any two vertices in

Let _{0} _{1} _{2}…_{h}(=

Suppose the lemma holds true for _{0} _{1} _{2}…_{h}(= _{0} or _{h} is the newly added vertex. W.l.o.g., let _{h} be the newly added vertex. From the induction hypothesis, _{h−1}) = min{_{i}, _{i+1})∣1 ≤ _{h−1} and _{h}, similar to the proof of Lemma 3, it is easily verified that _{h}) = min{_{h−1}), _{h−1}, _{h})}. It follows that _{h}) = min{min{_{i}, _{i+1})∣1 ≤ _{h−1}, _{h})} = min{min{_{i}, _{i+1})∣1 ≤ _{h−1}, _{h})} = min{_{i}, _{i+1})∣1 ≤

Our algorithm works in a preprocessing-query manner. In the preprocessing phase, Procedure C

Since each query initiates a DFS traversal over _{A}∣ =

In this paper, an algorithm for finding all

There are other interesting problems concerning edge-connectivity that are worthwhile to study. For example, a variant of

This work is supported by National Natural Science Foundation of China (No. 11171086, 61433012, U1435215), Research Grants Council of Hong Kong (No. HKU 7114/13E, HKU 7164/12E, HKU 7111/12E), Natural Sciences and Engineering Research Council of Canada, NSERC 7811-2009, Natural Science Foundation of Hebei Province (No. A2013201218), Chinese Academy of Sciences research grant (No. KGZD-EW-103-5(9)).