Order based algorithms for the core maintenance problem on edge-weighted graphs - Zhang, Feiteng; Liu, Bin; Liu, Zhenming; Fang, Qizhi (Theoretical computer science, 2023)
The cohesive subgraph k-core is a maximal connected subgraph with the minimum degree δ≥k of a simple graph, where integer k≥0. Define the core number of a vertex w as the maximum k such that w is contained in a k-core. The core decomposition problem which is calculating the core numbers of all vertices in static graphs, and the core maintenance problem which is updating the core numbers in dynamic graphs are our main concern. Although, core numbers can be updated by the core decomposition algorithms, only a small part of vertices' core numbers have changed after the change of a graph. Thus, it is necessary to update core numbers locally to reduce the cost. In this paper, we study the core maintenance problem on edge-weighted graphs by using the vertex sequence k-order which is ordered by the order that the core decomposition algorithm removes vertices. We design the core maintenance algorithms for inserting one edge at a time and the method of updating the k-order, which reduce the searching range and the time cost evidently. For the removing case, we use the existing subcore algorithm to do the core maintenance and modify it with the method of updating k-order we design. Finally, we do extensive experiments to evaluate the effectiveness and the efficiency of our algorithms, which shows that the order based algorithm has a better performance than the existing for the core maintenance on edge-weighted graphs. •We solve the core maintenance problem on edge-weighted graphs with a tool named weighted k-order.•The weighted k-order, a vertex sequence, is defined on edge-weighted graphs for the first time.•We give the properties of vertices whose core numbers increase on the k-order for inserting case on edge-weighted graphs.•The order based core maintenance algorithm for inserting case on edge-weighted graphs is given, which is the best.•We give the methods to update the k-order after inserting or removing one edge for the next core maintenance.