Pagini recente » Cod sursa (job #1701503) | Cod sursa (job #1961255) | Cod sursa (job #1276732) | Cod sursa (job #3241598) | Cod sursa (job #3253595)
def DFSNerecursivConex(graf,n,nod,vizitare):
stack=[]
stack.append(nod)
while len(stack)!=0:
nodcurent=stack[-1]
stack.pop()
if not vizitare[nodcurent]:
print(nodcurent)
vizitare[nodcurent]=True
if nodcurent in graf:
for noduri in graf[nodcurent]:
if not vizitare[noduri]:
stack.append(noduri)
def nrcompconexe(graf):
n=len(graf)+1
vizitare=[False for _ in range(n)]
nr=0
for i in range(1,n):
if not vizitare[i]:
nr+=1
DFSNerecursivConex(graf,n,i,vizitare)
print(nr)