Topological sort of a DAG
Topological sort of a DAG.
topological_sort(dag)
dag |
A square matrix representing a directed graph which contains 0s and 1s. If G[i, j] = 1 it means there is an arrow from node i to node j. When there is no edge between nodes i and j if G[i, j] = 0. |
The function is an R translation from an old matlab code.
A vector with numbers indicating the sorting. If the dag is not a Directed acyclic Graph, NA will be returned.
Michail Tsagris and Manos Papadakis
R implementation and documentation: Michail Tsagris <mtsagris@yahoo.gr> and Manos Papadakis <papadakm95@gmail.com>
Chickering, D.M. (1995). A transformational characterization of equivalent Bayesian network structures. Proceedings of the 11th Conference on Uncertainty in Artificial Intelligence, Montreal, Canada, 87-98.
G <- matrix(0, 5, 5) G[2, 1] <- 1 G[3, 1] <- 1 G[4, 2] <- 1 G[5, 4] <- 1 res<-topological_sort(G) G[2, 4] <- 1 res<-topological_sort(G)
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.