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)
Beispiel #2
0
    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
Beispiel #4
0
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
Beispiel #6
0
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