def symGraph(self): for u in range(len(self.graphNodesList)): uComp = findMyComp(u) for vI in self.graphNodesList[u].listOfNextNodes: v = vI[0] vComp = findMyComp(v) if not graphLib.nameInEdgeList(vComp, self.graphNodesList[uComp].listOfPrevNodes): self.removeEdge(u,v) for vI in self.graphNodesList[u].listOfPrevNodes: v = vI[0] vComp = findMyComp(v) if not graphLib.nameInEdgeList(vComp, self.graphNodesList[uComp].listOfNextNodes): self.removeEdge(v,u)
def symGraph(self): for u in range(len(self.graphNodesList)): uComp = findMyComp(u) for vI in self.graphNodesList[u].listOfNextNodes: v = vI[0] vComp = findMyComp(v) if not graphLib.nameInEdgeList(vComp, self.graphNodesList[uComp].listOfPrevNodes): self.removeEdge(u,v) for vI in self.graphNodesList[u].listOfPrevNodes: v = vI[0] vComp = findMyComp(v) if not graphLib.nameInEdgeList(vComp, self.graphNodesList[uComp].listOfNextNodes): self.removeEdge(v,u)
def formReverseGraph(G): nNode = len(G.graphNodesList) Grev = seqGraphWt(nNode) for i in range(nNode): for j in range(nNode): haveInserted = graphLib.nameInEdgeList(j, G.graphNodesList[i].listOfNextNodes) if haveInserted: Grev.insertEdge(j, i, 100) return Grev
def formReverseGraph(G): nNode = len(G.graphNodesList) Grev = seqGraphWt(nNode) for i in range(nNode): for j in range(nNode): haveInserted = graphLib.nameInEdgeList(j, G.graphNodesList[i].listOfNextNodes) if haveInserted: Grev.insertEdge(j, i, 100) return Grev
def BFS_revisit(u, v, G, k): resultList = [] isEdge = graphLib.nameInEdgeList(v, G.graphNodesList[u].listOfNextNodes) if isEdge: resultList.append([u,v]) if k>1: for w in G.graphNodesList[u].listOfNextNodes: returnList = BFS_revisit(w[0],v,G,k-1) for p in returnList: tmpList = [u] for i in p: tmpList.append(i) resultList.append(tmpList) return resultList
def BFS_revisit(u, v, G, k): resultList = [] isEdge = graphLib.nameInEdgeList(v, G.graphNodesList[u].listOfNextNodes) if isEdge: resultList.append([u,v]) if k>1: for w in G.graphNodesList[u].listOfNextNodes: returnList = BFS_revisit(w[0],v,G,k-1) for p in returnList: tmpList = [u] for i in p: tmpList.append(i) resultList.append(tmpList) return resultList