mögliche Dubletten:
find whether a loop in a linked list without two pointers
How to determine if a linked list has a cycle using only two memory locations.
Best algorithm to test if a linked list has a cycleWie kann festgestellt werden, ob eine verkettete Liste eine Schleife enthält?
Während einer Vorbereitung für ein Vorstellungsgespräch, stieß ich auf die folgende Frage:
Wie können Sie, ob eine Bestimmung verknüpfte Liste (beliebiger Art) enthält eine Schleife, die additio verwendet Raumkomplexität von O (1)? Sie können nicht davon ausgehen, dass die Schleife beim ersten Knoten beginnt (und natürlich muss die Schleife nicht alle Knoten enthalten).
ich die Antwort nicht finden konnte, obwohl ich das Gefühl, es ist ganz einfach haben ...
Ich habe diese genaue Frage in einem Interview selbst verpasst. Ich konnte nur die O (* n *) Speicher- und Zeitlösung geben. – Thanatos
Ich habe in einer CS-Klasse davon erfahren, aber ich denke nicht, dass es eine besonders gute Frage ist, da es "nur offensichtlich ist, wenn du es bereits weißt". –
Viele, viele Duplikate, z.B. [Finden Sie heraus, ob eine Schleife in einer verknüpften Liste ohne zwei Zeiger] (http://stackoverflow.com/questions/2338683/find-wether-a-loop-in-a-linked-list-without-towe-pointer) –