<prompt> Una grafu ya nodi za n zilizoandikwa kutoka 0 hadi n - 1. Unapewa nambari kamili n na orodha ya kingo ambapo kingoi ai, bi inaonyesha kuwa kuna ukingo usioelekezwa kati ya nodi ai na bi kwenye grafu.Rejesha kweli _ikiwa kingo za grafu iliyotolewa zinaunda mti sahihi, na_ uongo _vinginevyo_.Mfano wa 1:Ingizo: n 5, kingo 0,1,0,2,0,3,1,4Pato: kweliMfano wa 2:Ingizo: n 5, kingo 0,1,1,2,2,3,1,3,1, 4Pato: si kweliVikwazo: 1 n 2000 0 edges.length 5000 kingoi.urefu 2 0 ai, bi n ai ! bi Hakuna vitanzi vya kibinafsi au kingo zinazorudiwa.  <response>: chatukutoka kwa kuchapa Orodha ya kuingizadef isTreen: int, kingo: ListOrodhaint - bool: majirani kwa _ katika safun kwa makali katika kingo: majiranimakali0.ongezamakali1 majiranimakali1.ongezamakali0 alitembelea Uongo n ikiwa inaMzungukomajirani, uliotembelewa, -1, 0: rudisha Siyo rudisha zote zilizotembelewadef hasCyclemajirani: OrodhaOrodhaint,iliyotembelewa: Orodhabool, mzazi: int, nodi: int - bool: alitembeleanodi Kweli kwa jirani katika majiraninodi: ikiwa jirani ! mzazi na alitembeleajirani au hajatembelewajirani na anaMzungukomajirani, alitembelea, nodi, jirani: rudi Kweli kurudi UongomaelezoKanuni hutumia utafutaji wa kina-kwanza DFS ili kupitisha grafu iliyotolewa. Wakati wa kuvuka, huangalia ikiwa kuna mzunguko node iliyotembelewa zaidi ya mara moja. Mti halali haufai kuwa na mizunguko yoyote, na nodi zote lazima zipatikane.1. Unda orodha ya majirani kwa kila nodi.2. Anzisha safu iliyotembelewa ili kufuatilia nodi zilizotembelewa.3. Piga kitendaji cha hasCycle kutekeleza DFS na pia angalia uwepo wa mzunguko.4. Ikiwa mzunguko upo, rudisha uwongo.5. Ikiwa nodi zote hazijatembelewa, rudisha uwongo.6. Ikiwa hakuna mzunguko na nodes zote zimetembelewa, kurudi kweli.Chaguo za kukokotoa za hasCycle hukagua mzunguko kwa kujirudia. Unapotembelea nodi, itie alama kama imetembelewa. Kwa kila jirani wa nodi ya sasa, ikiwa jirani sio mzazi na ametembelewa, rudi kweli kama mzunguko unavyopatikana. Ikiwa jirani hajatembelewa, piga kitendaji cha hasCycle kwa kujirudia. Ikiwa marudio yanarudi kweli, mzunguko umepatikana. Vinginevyo, rudisha sivyo kwani hakuna mzunguko unaopatikana katika majirani wa sasa. 