83,251 research outputs found

    Pixel and Voxel Representations of Graphs

    Full text link
    We study contact representations for graphs, which we call pixel representations in 2D and voxel representations in 3D. Our representations are based on the unit square grid whose cells we call pixels in 2D and voxels in 3D. Two pixels are adjacent if they share an edge, two voxels if they share a face. We call a connected set of pixels or voxels a blob. Given a graph, we represent its vertices by disjoint blobs such that two blobs contain adjacent pixels or voxels if and only if the corresponding vertices are adjacent. We are interested in the size of a representation, which is the number of pixels or voxels it consists of. We first show that finding minimum-size representations is NP-complete. Then, we bound representation sizes needed for certain graph classes. In 2D, we show that, for kk-outerplanar graphs with nn vertices, Θ(kn)\Theta(kn) pixels are always sufficient and sometimes necessary. In particular, outerplanar graphs can be represented with a linear number of pixels, whereas general planar graphs sometimes need a quadratic number. In 3D, Θ(n2)\Theta(n^2) voxels are always sufficient and sometimes necessary for any nn-vertex graph. We improve this bound to Θ(nτ)\Theta(n\cdot \tau) for graphs of treewidth τ\tau and to O((g+1)2nlog2n)O((g+1)^2n\log^2n) for graphs of genus gg. In particular, planar graphs admit representations with O(nlog2n)O(n\log^2n) voxels

    Recognizing Planar Laman Graphs

    Get PDF
    Laman graphs are the minimally rigid graphs in the plane. We present two algorithms for recognizing planar Laman graphs. A simple algorithm with running time O(n^(3/2)) and a more complicated algorithm with running time O(n log^3 n) based on involved planar network flow algorithms. Both improve upon the previously fastest algorithm for general graphs by Gabow and Westermann [Algorithmica, 7(5-6):465 - 497, 1992] with running time O(n sqrt{n log n}). To solve this problem we introduce two algorithms (with the running times stated above) that check whether for a directed planar graph G, disjoint sets S, T subseteq V(G), and a fixed k the following connectivity condition holds: for each vertex s in S there are k directed paths from s to T pairwise having only vertex s in common. This variant of connectivity seems interesting on its own

    Time-Space Trade-Offs for Computing Euclidean Minimum Spanning Trees

    Full text link
    In the limited-workspace model, we assume that the input of size nn lies in a random access read-only memory. The output has to be reported sequentially, and it cannot be accessed or modified. In addition, there is a read-write workspace of O(s)O(s) words, where s{1,,n}s \in \{1, \dots, n\} is a given parameter. In a time-space trade-off, we are interested in how the running time of an algorithm improves as ss varies from 11 to nn. We present a time-space trade-off for computing the Euclidean minimum spanning tree (EMST) of a set VV of nn sites in the plane. We present an algorithm that computes EMST(V)(V) using O(n3logs/s2)O(n^3\log s /s^2) time and O(s)O(s) words of workspace. Our algorithm uses the fact that EMST(V)(V) is a subgraph of the bounded-degree relative neighborhood graph of VV, and applies Kruskal's MST algorithm on it. To achieve this with limited workspace, we introduce a compact representation of planar graphs, called an ss-net which allows us to manipulate its component structure during the execution of the algorithm

    Minimum Cycle Basis and All-Pairs Min Cut of a Planar Graph in Subquadratic Time

    Full text link
    A minimum cycle basis of a weighted undirected graph GG is a basis of the cycle space of GG such that the total weight of the cycles in this basis is minimized. If GG is a planar graph with non-negative edge weights, such a basis can be found in O(n2)O(n^2) time and space, where nn is the size of GG. We show that this is optimal if an explicit representation of the basis is required. We then present an O(n3/2logn)O(n^{3/2}\log n) time and O(n3/2)O(n^{3/2}) space algorithm that computes a minimum cycle basis \emph{implicitly}. From this result, we obtain an output-sensitive algorithm that explicitly computes a minimum cycle basis in O(n3/2logn+C)O(n^{3/2}\log n + C) time and O(n3/2+C)O(n^{3/2} + C) space, where CC is the total size (number of edges and vertices) of the cycles in the basis. These bounds reduce to O(n3/2logn)O(n^{3/2}\log n) and O(n3/2)O(n^{3/2}), respectively, when GG is unweighted. We get similar results for the all-pairs min cut problem since it is dual equivalent to the minimum cycle basis problem for planar graphs. We also obtain O(n3/2logn)O(n^{3/2}\log n) time and O(n3/2)O(n^{3/2}) space algorithms for finding, respectively, the weight vector and a Gomory-Hu tree of GG. The previous best time and space bound for these two problems was quadratic. From our Gomory-Hu tree algorithm, we obtain the following result: with O(n3/2logn)O(n^{3/2}\log n) time and O(n3/2)O(n^{3/2}) space for preprocessing, the weight of a min cut between any two given vertices of GG can be reported in constant time. Previously, such an oracle required quadratic time and space for preprocessing. The oracle can also be extended to report the actual cut in time proportional to its size
    corecore