Doppelt verkettete Liste?

1 Antwort

Vom Fragesteller als hilfreich ausgezeichnet

Hi,

wenn du den Anfang a und das Element x zum Entfernen hast, musst du bei einer einfach verketteten Liste

i = anf; 
while(i.next!=x) i=i.next; //O(n)
i.next = i.next.next; 

machen, um das Element zu entfernen. Hast du eine doppelt verkettete Liste, musst du nur

x.prev.next = x.next;
x.next.prev = x.prev;

machen, um das Element zu entfernen, und daher nicht die ganze Liste durchgehen.

Woher ich das weiß:Berufserfahrung – Softwareentwickler & Admin