Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

Loading...
Searching...
No Matches
DisjointSets.h File Reference

Implementation of disjoint sets data structures (union-find functionality). More...

#include <ogdf/basic/exceptions.h>
#include <cstring>

Go to the source code of this file.

Classes

struct  ogdf::disjoint_sets::AnyOption
 
struct  ogdf::disjoint_sets::CompressionOption< compressionOption >
 
struct  ogdf::disjoint_sets::InterleavingOption< interleavingOption >
 
struct  ogdf::disjoint_sets::LinkOption< linkOption >
 
class  ogdf::DisjointSets< linkOption, compressionOption, interleavingOption >
 A Union/Find data structure for maintaining disjoint sets. More...
 

Namespaces

namespace  ogdf
 The namespace for all OGDF objects.
 
namespace  ogdf::disjoint_sets
 

Macros

#define OGDF_DISJOINT_SETS_INTERMEDIATE_PARENT_CHECK
 

Enumerations

enum class  ogdf::CompressionOptions { ogdf::PathCompression = 0 , ogdf::PathSplitting = 1 , ogdf::PathHalving = 2 , ogdf::Type1Reversal = 4 , ogdf::Collapsing = 5 , ogdf::Disabled = 6 }
 Defines options for compression search paths. More...
 
enum class  ogdf::InterleavingOptions { ogdf::Disabled = 0 , ogdf::Rem = 1 , ogdf::Tarjan = 2 , ogdf::Type0Reversal = 3 , ogdf::SplittingCompression }
 Defines options for interleaving find/link operations in quickUnion. More...
 
enum class  ogdf::LinkOptions { ogdf::Naive = 0 , ogdf::Index = 1 , ogdf::Size = 2 , ogdf::Rank = 3 }
 Defines options for linking two sets. More...
 

Detailed Description

Implementation of disjoint sets data structures (union-find functionality).

Author
Andrej Dudenhefner
License:
This file is part of the Open Graph Drawing Framework (OGDF).
Copyright (C)
See README.md in the OGDF root directory for details.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License Version 2 or 3 as published by the Free Software Foundation; see the file LICENSE.txt included in the packaging of this file for details.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, see http://www.gnu.org/copyleft/gpl.html

Definition in file DisjointSets.h.

Macro Definition Documentation

◆ OGDF_DISJOINT_SETS_INTERMEDIATE_PARENT_CHECK

#define OGDF_DISJOINT_SETS_INTERMEDIATE_PARENT_CHECK

Definition at line 40 of file DisjointSets.h.