Mescal
Loading...
Searching...
No Matches
graphs_transclos.h
Go to the documentation of this file.
1
6
7#ifndef TRANSCLOS_H
8#define TRANSCLOS_H
9
10 /* ____ _ _ _ _ _ */
11 /* / ___|_ __ __ _ _ __ | |__ ___ _ | |_ _ __ __ _ _ __ ___(_) |_(_)_ _____ */
12 /* | | _| '__/ _` | '_ \| '_ \/ __(_) | __| '__/ _` | '_ \/ __| | __| \ \ / / _ \ */
13 /* | |_| | | | (_| | |_) | | | \__ \_ | |_| | | (_| | | | \__ \ | |_| |\ V / __/ */
14 /* \____|_| \__,_| .__/|_| |_|___(_) \__|_| \__,_|_| |_|___/_|\__|_| \_/ \___| */
15 /* ___| | ___ __|_| _ _ __ ___ */
16 /* / __| |/ _ \/ __| | | | '__/ _ \ */
17 /* | (__| | (_) \__ \ |_| | | | __/_ */
18 /* \___|_|\___/|___/\__,_|_| \___(_) */
19
20#include <stdbool.h>
21#include "graphs.h"
22#include "graphs_tarjan.h"
23#include "type_binheap.h"
24
25/***************************************************/
26/* Functions restricted to directed acyclic graphs */
27/***************************************************/
28
38 parti*
39);
40
52);
53
54
67 uint
68);
69
70
82 dequeue*
83);
84
85/**********************************/
86/* Functions for arbitrary graphs */
87/**********************************/
88
89
90
91
92// /**
93// * @brief
94// * Makes the transitive closure of the input graph.
95// */
96// void make_tclos_graph(graph* //!< An arbitrary graph.
97// );
98
99#endif
Implementation of graphs.
Implementation of Tarjan's algorithm.
graph * compute_dag_of_sccs(graph *, parti *)
Given as input an arbitrary graph and its partition into SCCs, computes the associated DAG of SCCs (e...
Definition graphs_transclos.c:13
dequeue * topo_sort_dag(graph *)
Given a DAG as input, computes a topological ordering on its vertices.
Definition graphs_transclos.c:71
graph * compute_tclos_dag(graph *, dequeue *)
Computes the transitive closure of a DAG.
Definition graphs_transclos.c:110
dequeue * topo_sort_dag_start(graph *, uint)
Given a DAG as input and a vertex of this graph, computes a topological ordering on the vertices that...
Definition graphs_transclos.c:91
Type used to represent a dequeue of unsigned integers.
Definition type_dequeue.h:26
Type used to represent a directed unlabeled graph.
Definition graphs.h:42
First type used to represent a partition. This is not the one used by Union-Find.
Definition type_partitions.h:36
Implementation of generic binary heaps.