def test_1(prt=sys.stdout): txtblk = """ A: F B B: F A C: G D: I E J H E: D J F: A B G: C H: I D I: D H J J: D I E """ G = Graph(adjtxt=txtblk) cc = CC(G) cc.prt_ids(prt) prt.write("\n{}\n".format(G))
def main(prt=sys.stdout): L = len(sys.argv[1:]) g = cli_get_fin(sys.argv[1] if L != 0 else "../thirdparty/tinyG.txt") G = Graph(g) cc = CC(G) # number of connected components M = cc.count() prt.write("{M} components\n".format(M=M)) # compute list of vertices in each connected component components = [cx.deque() for i in range(M)] for v in range(G.V()): components[cc.id(v)].append(v) # enqueue(v) # print results for i in range(M): for v in components[i]: prt.write("{v} ".format(v=v)) prt.write("\n")
def test_0(prt=sys.stdout): L = len(sys.argv[1:]) g = cli_get_fin(sys.argv[1] if L != 0 else "../thirdparty/tinyG.txt") G = Graph(g) cc = CC(G) # number of connected components M = cc.count() prt.write("{M} components\n".format(M=M)) # compute list of vertices in each connected component components = [cx.deque() for i in range(M)] for v in range(G.V()): components[cc.id(v)].append(v) # enqueue(v) # print results for i in range(M): for v in components[i]: prt.write("{v} ".format(v=v)) prt.write("\n")