GAP (datastructures) - Contents

Goto Chapter: Top 1 2 3 4 5 6 7 8 9 10 11 12 Bib Ind
[Top of Book] [Contents] [Next Chapter]

[MathJax on]

# datastructures

## Collection of standard data structures for GAP

0.3.0

4 November 2022

Markus Pfeiffer
Email: markus.pfeiffer@st-andrews.ac.uk
Homepage: http://www.morphism.de/~markusp
Address:
School of Computer Science
University of St Andrews
Jack Cole Building, North Haugh
St Andrews, Fife, KY16 9SX
United Kingdom

Max Horn
Email: horn@mathematik.uni-kl.de
Homepage: https://www.quendi.de/math
Address:
Fachbereich Mathematik
TU Kaiserslautern
Gottlieb-Daimler-Straße 48
67663 Kaiserslautern
Germany

Christopher Jefferson
Email: caj21@st-andrews.ac.uk
Homepage: http://caj.host.cs.st-andrews.ac.uk/
Address:
School of Computer Science
University of St Andrews
Jack Cole Building, North Haugh
St Andrews, Fife, KY16 9SX
United Kingdom

Steve Linton
Email: steve.linton@st-andrews.ac.uk
Homepage: http://sl4.host.cs.st-andrews.ac.uk/
Address:
School of Computer Science
University of St Andrews
Jack Cole Building, North Haugh
St Andrews, Fife, KY16 9SX
United Kingdom

### Copyright

© 2015-18 by Chris Jefferson, Steve Linton, Markus Pfeiffer, Max Horn, Reimer Behrends and others

datastructures package is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

### Acknowledgements

We appreciate very much all past and future comments, suggestions and contributions to this package and its documentation provided by GAP users and developers.

### Contents

1 Introduction
1.1 Purpose and goals of this package
1.2 Overview over this manual
1.3 Feedback
2 Installation
2.1 Building the Kernel Module
2.2 Building the Documentation
3 Heaps
3.1 Introduction
3.2 API
3.2-1 IsHeap
3.2-2 Heap
3.2-3 NewHeap
3.2-4 Push
3.2-5 Peek
3.2-6 Pop
3.2-7 Merge
3.3 Binary Heaps
3.3-1 BinaryHeap
3.4 Pairing Heaps
3.4-1 PairingHeap
3.5 Declarations
3.5-1 IsBinaryHeapFlatRep
3.6 Implementation
3.6-1 IsPairingHeapFlatRep
4 Queues and Deques
4.1 API
4.1-1 IsQueue
4.1-2 IsDeque
4.1-3 PushBack
4.1-4 PushFront
4.1-5 PopBack
4.1-6 PopFront
4.1-7 Enqueue
4.1-8 Dequeue
4.1-9 Capacity
4.1-10 Capacity
4.1-11 Length
4.1-12 Length
4.2 Deques implemented using plain lists
4.2-1 PlistDeque
4.2-2 PlistDequePushFront
4.2-3 PlistDequePushBack
4.2-4 PlistDequePopFront
4.2-5 PlistDequePopBack
4.2-6 PlistDequePeekFront
4.2-7 PlistDequePeekBack
4.2-8 PlistDequeExpand
5 Union-Find
5.1 Introduction
5.2 API
5.2-1 IsPartitionDS
5.2-2 PartitionDS
5.2-3 PartitionDS
5.2-4 Representative
5.2-5 Unite
5.2-6 RootsIteratorOfPartitionDS
5.2-7 NumberParts
5.2-8 SizeUnderlyingSetDS
5.2-9 PartsOfPartitionDS
6 Hash Functions
6.1 Introduction
6.2 Hash Functions for Basic Types
6.2-1 HashBasic
6.3 Hash Functions for Permutation Groups
6.3-1 Hash_PermGroup_Fast
6.3-2 Hash_PermGroup_Complete
7 Hashmaps
7.1 API
7.1-1 IsHashMap
7.1-2 HashMap
7.1-3 Keys
7.1-4 Values
7.1-5 KeyIterator
7.1-6 ValueIterator
7.1-7 KeyValueIterator
`7.1-8 \[\]`
`7.1-9 \[\]\:\=`
`7.1-10 \in`
`7.1-11 IsBound\[\]`
`7.1-12 Unbind\[\]`
7.1-13 Size
7.1-14 IsEmpty
8 Hashsets
8.1 API
8.1-1 IsHashSet
8.1-2 HashSet
8.1-3 AddSet
`8.1-4 \in`
8.1-5 RemoveSet
8.1-6 Size
8.1-7 IsEmpty
8.1-8 Set
8.1-9 AsSet
8.1-10 Iterator
9 Memoisation
9.1 Memoisation with HashMap
9.1-1 MemoizeFunction
10 Ordered Set Datastructures
10.1 Usage
10.2 API
10.2-1 IsOrderedSetDS
10.2-2 IsStandardOrderedSetDS
10.2-3 OrderedSetDS
10.2-4 OrderedSetDS
10.2-5 OrderedSetDS
10.2-6 OrderedSetDS
10.2-7 OrderedSetDS
10.2-8 OrderedSetDS
10.2-9 OrderedSetDS
10.2-10 AddSet
10.2-11 RemoveSet
`10.2-12 \in`
10.2-13 LessFunction
10.2-14 Size
10.2-15 IteratorSorted
10.3 Default methods
10.3-1 Iterator
10.3-2 AsSSortedList
10.3-3 AsSortedList
10.3-4 AsList
10.3-5 EnumeratorSorted
10.3-6 Enumerator
10.3-7 IsEmpty
10.3-8 Length
10.3-9 Position
10.3-10 PositionSortedOp
10.3-11 PositionSortedOp
11 Slices
11.1 API
11.1-1 Slice
11.1-2 IsSlice
`11.1-3 \[\]`
`11.1-4 \[\]\:\=`
`11.1-5 \in`
`11.1-6 IsBound\[\]`
`11.1-7 Unbind\[\]`
11.1-8 Length
12 Stacks
12.1 API
12.1-1 Stack
12.1-2 IsStack
12.1-3 Push
12.1-4 Peek
12.1-5 Pop
12.1-6 Size
References
Index
[Top of Book] [Contents] [Next Chapter]
Goto Chapter: Top 1 2 3 4 5 6 7 8 9 10 11 12 Bib Ind

generated by GAPDoc2HTML