## Improved Symmetric Lists (2004)

### Cached

### Download Links

Citations: | 2 - 2 self |

### BibTeX

@TECHREPORT{Bachmaier04improvedsymmetric,

author = {Christian Bachmaier and Marcus Raitner},

title = {Improved Symmetric Lists},

institution = {},

year = {2004}

}

### OpenURL

### Abstract

We introduce a new data structure called symlist based on an idea of Tarjan [17]. A symlist is a doubly linked list without any directional information encoded into its cells. In a symlist the two pointers in each cell have no fixed meaning like previous or next in standard lists.

### Citations

2197 |
The art of computer programming
- Knuth
- 1973
(Show Context)
Citation Context ...n A doubly linked list consists of cells each containing a data field storing an element of the list and two pointers to its neighbours. In general, the interpretation of these pointers is hard-coded =-=[1, 5, 10, 13]-=-. Lists usually rely on the interpretation that the pointer named prev refers to the previous cell and the one named next to the next cell. Clearly, reversing such a list can either be done in linear ... |

468 |
Testing for the consecutive ones property, interval graphs, and graph planarity using pq-tree algorithms
- Booth, Lueker
- 1976
(Show Context)
Citation Context ...prevent errors. As a particular application consider for example level planarity testing, which has been investigated in graph drawing, see [8, 9]. Like the ordinary graph planarity testing algorithm =-=[2]-=-, it uses PQ-Trees. The children of all nodes could be stored in symlists, and in the template matching algorithm it can happen that a Q-node temporarily has only one child. Since this anomaly occurs ... |

456 |
Primitives for the Manipulation of General Subdivisions and the Computation of Voronoi Diagrams
- Guibas, Stol
- 1985
(Show Context)
Citation Context ...symlists is already described in [17], an anomaly which a straight-forward implementation of this idea will have (cf. Sect. 3.1) is not mentioned.sA symlist is related to the quad-edge data structure =-=[7]-=- that is used for efficiently representing embeddings of graphs in two-dimensional manifolds. It consists of quad-edges and each node contains four references to adjacent quadedges. For iterating thro... |

296 |
A data structure for dynamic trees
- Sleator, Tarjan
- 1983
(Show Context)
Citation Context ... was designed for that particular purpose only and is not meant to be generic. It is used for iterating through the represented graph and does not support reversals and insertions. Sleator and Tarjan =-=[16]-=- describe the efficient management of dynamic paths via biased trees. There every internal node v of the tree has a flag reversed(v). The reversal state of v is an exclusive or of the reversed flags f... |

85 |
STL Tutorial and Reference Guide
- Musser, Derge, et al.
- 2001
(Show Context)
Citation Context ...y of all methods on lists are identical except for reversing a list that can be done in constant time on a symlist. 2 Implementation Our implementation is based on the interface of the Stl class list =-=[14]-=- containing methods like empty, insert, splice, erase, and reverse, see Fig. 2. The interface is enriched with some new methods attach_sublist, detach_sublist, blind_insert, and blind_erase (see Sect.... |

55 |
A platform for combinatorial and geometric computing
- LEDA
- 1999
(Show Context)
Citation Context ...n A doubly linked list consists of cells each containing a data field storing an element of the list and two pointers to its neighbours. In general, the interpretation of these pointers is hard-coded =-=[1, 5, 10, 13]-=-. Lists usually rely on the interpretation that the pointer named prev refers to the previous cell and the one named next to the next cell. Clearly, reversing such a list can either be done in linear ... |

24 | Stop minding your P’s and Q’s: A simplified O(n) planar embedding algorithm
- Boyer, Myrvold
- 1999
(Show Context)
Citation Context ...ata structure with a well-defined interface that provides appropriate methods for accessing and manipulating the children of a Q-node. There is another linear time planarity test of Boyer and Myrvold =-=[3]-=- which does not use PQ-trees but also needs an efficient data structure for flipping biconnected components, see [3, Section 2]. They call this data structure doubly linked cycle with no sense of cloc... |

21 | Level planarity testing in linear time
- Jünger, Leipert, et al.
- 1998
(Show Context)
Citation Context ...ell, for instance. This problem can and must be resolved to prevent errors. As a particular application consider for example level planarity testing, which has been investigated in graph drawing, see =-=[8, 9]-=-. Like the ordinary graph planarity testing algorithm [2], it uses PQ-Trees. The children of all nodes could be stored in symlists, and in the template matching algorithm it can happen that a Q-node t... |

8 |
Data Structures and Network Algorithms, Chapter 6
- Tarjan
- 1983
(Show Context)
Citation Context ...an Bachmaier and Marcus Raitner University of Passau, 94030 Passau, Germany {bachmaier,raitner}@fmi.uni-passau.de Abstract. We introduce a new data structure called symlist based on an idea of Tarjan =-=[17]-=-. A symlist is a doubly linked list without any directional information encoded into its cells. In a symlist the two pointers in each cell have no fixed meaning like previous or next in standard lists... |

4 |
Planarity Testing and Embedding in Linear Time. Dissertation, Mathematisch-Naturwissenschaftliche Fakultät der Universität zu
- Level
- 1998
(Show Context)
Citation Context ...dding algorithm [4]. In some implementations of PQ-trees no separate list data structure is used for storing the children of a Q-node. The references to the adjacent siblings are stored in each child =-=[2, 11, 12]-=-. In these implementations the adjacency pointers are treated as an unordered set. Hence, they have no fixed meaning either andsreversing and inserting a reversed list can be done in constant time. Ho... |

3 |
Graph Template Library. http://www.infosun.fmi.uni-passau.de/GTL
- GTL
(Show Context)
Citation Context ...nowing the list object itself. These are very important in the implementation of PQ-trees. Our implementation of a symlist is similar to the Stl class list. It is available as part of the Gtl library =-=[6]-=-. Furthermore we have enhanced our implementation in order to use it as part of efficient level planarity testing on graphs. These extensions are used in a prototypic implementation of that test which... |

2 |
PQ-Trees – An Implementation as Template Class in C
- Leipert
- 1997
(Show Context)
Citation Context ...dding algorithm [4]. In some implementations of PQ-trees no separate list data structure is used for storing the children of a Q-node. The references to the adjacent siblings are stored in each child =-=[2, 11, 12]-=-. In these implementations the adjacency pointers are treated as an unordered set. Hence, they have no fixed meaning either andsreversing and inserting a reversed list can be done in constant time. Ho... |

1 |
Graph Algorithms, chapter 7–8
- Even
- 1979
(Show Context)
Citation Context ... list of children and inserting a list of children into another must be done in constant time. This complexity of reduce is crucial for the linear time graph planarity testing and embedding algorithm =-=[4]-=-. In some implementations of PQ-trees no separate list data structure is used for storing the children of a Q-node. The references to the adjacent siblings are stored in each child [2, 11, 12]. In the... |

1 |
Data Structures and Algorithms in Java, chapter 5.2
- Goodrich, Tamassia
- 2001
(Show Context)
Citation Context ...n A doubly linked list consists of cells each containing a data field storing an element of the list and two pointers to its neighbours. In general, the interpretation of these pointers is hard-coded =-=[1, 5, 10, 13]-=-. Lists usually rely on the interpretation that the pointer named prev refers to the previous cell and the one named next to the next cell. Clearly, reversing such a list can either be done in linear ... |

1 |
Recognizing level-planar dags in linear time
- Heath, Pemmeraju
- 1995
(Show Context)
Citation Context ...ell, for instance. This problem can and must be resolved to prevent errors. As a particular application consider for example level planarity testing, which has been investigated in graph drawing, see =-=[8, 9]-=-. Like the ordinary graph planarity testing algorithm [2], it uses PQ-Trees. The children of all nodes could be stored in symlists, and in the template matching algorithm it can happen that a Q-node t... |