Junior — Middle
Kā noteikt pirms pēdējā elementa vienkāršajā saistītajā sarakstā?
sobes.tech AI
Atbilde no AI
Vienkāršā saistītā sarakstā, lai atrastu priekšpēdējo elementu, ir jāpārvietojas pa sarakstu un jāpārtrauc pie mezgla, kura nākamais mezgls ir pēdējais (t.i., lauka Next vērtība nākamajā mezglā ir null).
Piemērs C#:
class Node {
public int Value;
public Node Next;
}
Node FindPenultimate(Node head) {
if (head == null || head.Next == null) return null; // nav priekšpēdējais
Node current = head;
while (current.Next.Next != null) {
current = current.Next;
}
return current;
}
Šeit cikls turpinās tik ilgi, kamēr nākamais mezgls arī ir ar nākamo mezglu, līdz nonākam pie priekšpēdējā elementa.