Пример #1
0
 def test_direct_graph(self):
     edges = [(0, 1), (0, 2), (1, 2), (2, 0), (2, 3), (3, 3)]
     graph = prepare_direct_graph(edges)
     assert [2, 3, 0,
             1] == dfs_iterative(graph,
                                 2), "Order of vertex visiting is wrong"
Пример #2
0
 def test_direct_graph_2(self):
     edges = [(1, 2), (2, 5), (2, 4), (4, 6), (4, 5), (5, 3), (3, 1)]
     graph = prepare_direct_graph(edges)
     assert [1, 2, 5, 3, 4,
             6] == dfs_iterative(graph,
                                 1), "Order of vertex visiting is wrong"
Пример #3
0
 def test_direct_graph_3(self):
     edges = [(1, 0), (0, 2), (2, 1), (0, 3), (1, 4)]
     graph = prepare_direct_graph(edges)
     assert [0, 3, 2, 1,
             4] == dfs_iterative(graph,
                                 0), "Order of vertex visiting is wrong"
Пример #4
0
    def test_direct_graph(self):
        edges = [(0, 1), (0, 2), (2, 3), (1, 3)]
        graph = prepare_direct_graph(edges)

        assert False is is_cyclic(graph), "Graph has no cycles"
Пример #5
0
 def __init__(self, edges):
     self._edges_num = len(edges)
     self._graph = prepare_direct_graph(edges)
     self._stack = set()
     self._ids = []
     self._visited = set()
 def test_graph(self):
     graph = prepare_direct_graph([(0, 2), (2, 1), (1, 0), (0, 3), (3, 4)])
     assert [[0, 1, 2], [3], [4]] == StronglyConnected(
         graph).strongly_connected_components(), 'Error in detecting SCC'