Asosiy matnga o'tish

80. Rekursiv: bog'lanishlardagi siklni aniqlash

Qiyin

Hujjatlar bir-biriga havola qiladi (edges: from_node → to_node).

Havolalar zanjiri bo'ylab yurib, o'ziga qaytib keladigan tugunlarni toping —

ya'ni sikl (halqa) tarkibidagi tugunlarni.

Ustun: node. Har tugun bir marta chiqsin.

Saralash: node alifbo.

💡 Maslahat: bosib o'tilgan tugunlarni massivda saqlang, aks holda so'rov

cheksiz aylanib qoladi.

Jadval: edges

UstunTuri
from_nodeVARCHAR
to_nodeVARCHAR

Namuna ma'lumotlar

sample
edges
from_nodeVARCHAR(20)to_nodeVARCHAR(20)
AB
BC
CA
DE
Kutilgan natija
node
A
B
C
sample-full
edges
from_nodeVARCHAR(20)to_nodeVARCHAR(20)
AB
BC
CA
DE
EF
GH
HG
II
JK
KL
LM
Kutilgan natija
node
A
B
C
G
H
I
sample-extra
edges
from_nodeVARCHAR(20)to_nodeVARCHAR(20)
CC
DE
HG
BL
BK
DA
Kutilgan natija
node
C

O'xshash masalalar

Konsol

Natijani ko'rish uchun so'rovni ishga tushiring.