Come trovare l'elemento medio dell'elenco doppiamente collegato usando la testa e la coda?

cs.stackexchange https://cs.stackexchange.com/questions/90777

  •  05-11-2019
  •  | 
  •  

Domanda

C'è un modo possibile per trovare l'elemento medio di un elenco doppiamente collegato usando la testa e la coda. Ho provato a attraversare l'elemento successivo dal nodo iniziale e dell'elemento precedente dal nodo finale e verificare se il riferimento di entrambi è lo stesso o meno. Funziona bene se ci sono un numero dispari di elementi nell'elenco. Non sono in grado di trovare quando dovrei fermarmi nel caso in cui il numero di elementi nell'elenco sia pari.

while(head.next != end.previous) {
    head = head.next;
    end = end.previous;
}

Nessuna soluzione corretta

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a cs.stackexchange
scroll top