Sobes.tech
Junior — Middle

Πώς μπορεί να προστεθεί ένας νέος κόμβος στο μεσαίο μέρος μιας συνδεδεμένης λίστας;

sobes.tech AI

Απάντηση από AI

Για να προσθέσετε έναν νέο κόμβο στο μέσο μιας συνδεδεμένης λίστας σε Java, πρέπει:

  1. Να δημιουργήσετε έναν νέο κόμβο με την απαιτούμενη τιμή.
  2. Να βρείτε τον κόμβο μετά τον οποίο θέλετε να εισάγετε τον νέο (π.χ. με βάση το δείκτη ή την τιμή).
  3. Να αλλάξετε τους συνδέσμους έτσι ώστε ο νέος κόμβος να δείχνει στον επόμενο κόμβο μετά τον βρεθεί, και ο βρεθείς κόμβος να δείχνει στον νέο.

Παράδειγμα για μια απλή συνδεδεμένη λίστα:

class Κόμβος {
    int δεδομένα;
    Κόμβος επόμενος;
    Κόμβος(int δεδομένα) { this.δεδομένα = δεδομένα; }
}

// Εισαγωγή νέου κόμβου μετά τον prevNode
void εισάγετεΜετά(Κόμβος prevNode, int νέαΔεδομένα) {
    if (prevNode == null) return;
    Κόμβος νέοςΚόμβος = new Κόμβος(νέαΔεδομένα);
    νέοςΚόμβος.επόμενος = prevNode.επόμενος;
    prevNode.επόμενος = νέοςΚόμβος;
}

Έτσι, ο νέος κόμβος εισάγεται μεταξύ του prevNode και του prevNode.επόμενος.