Πίνακας περιεχομένων:

Πώς διαγράφετε μια κυκλική συνδεδεμένη λίστα;
Πώς διαγράφετε μια κυκλική συνδεδεμένη λίστα;

Βίντεο: Πώς διαγράφετε μια κυκλική συνδεδεμένη λίστα;

Βίντεο: Πώς διαγράφετε μια κυκλική συνδεδεμένη λίστα;
Βίντεο: ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΣΕ C - ΜΑΘΗΜΑ 5 - ΠΑΡΑΛΛΑΓΕΣ ΤΗΣ ΛΙΣΤΑΣ (4/5) - Κυκλικά Συνδεδεμένη Λίστα 2024, Απρίλιος
Anonim

Διαγραφή από μια κυκλική συνδεδεμένη λίστα

  1. Αν το λίστα δεν είναι κενό τότε ορίζουμε δύο δείκτες curr και prev και αρχικοποιούμε το δείκτη curr με τον κόμβο κεφαλής.
  2. Διασχίστε το λίστα χρησιμοποιώντας το curr για να βρείτε τον κόμβο που θα διαγραφεί και πριν μετακινήσετε το curr στον επόμενο κόμβο, ορίστε κάθε φορά prev = curr.
  3. Εάν βρεθεί ο κόμβος, ελέγξτε αν είναι ο μόνος κόμβος στο λίστα .

Με αυτόν τον τρόπο, πώς μπορείτε να διαγράψετε έναν τελευταίο κόμβο σε μια κυκλική συνδεδεμένη λίστα;

Διαγραφή του τελευταίου κόμβου της λίστας Circular Linekd

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

Επίσης, πώς μπορείτε να διαγράψετε ένα στοιχείο από μια συνδεδεμένη λίστα; Υπάρχουν μερικά βήματα για τη διαγραφή ενός συγκεκριμένου στοιχείου από τη λίστα:

  1. Βρείτε τον κόμβο με το στοιχείο (αν υπάρχει).
  2. Αφαιρέστε αυτόν τον κόμβο.
  3. Συνδέστε ξανά τη συνδεδεμένη λίστα.
  4. Ενημερώστε τον σύνδεσμο προς την αρχή (αν χρειάζεται).

Αντίστοιχα, πώς αντιστρέφετε μια κυκλική συνδεδεμένη λίστα;

Παρακάτω είναι η λογική βήμα προς βήμα για την αντιστροφή μιας κυκλικής συνδεδεμένης λίστας

  1. Αρχικοποιήστε τρεις μεταβλητές δείκτη, last = head, cur = head->next και prev = head.
  2. Μετακίνηση κόμβου κεφαλής μπροστά, δηλ. head = head->next;
  3. Σύνδεση του τρέχοντος κόμβου με τον προηγούμενο κόμβο, δηλαδή cur->next = prev;
  4. Να γίνει ο προηγούμενος κόμβος ως τρέχων κόμβος, π.χ. prev = cur;

Τι είναι η κυκλική διπλά συνδεδεμένη λίστα;

Κυκλική λίστα διπλά συνδεδεμένη είναι ένας πιο σύνθετος τύπος δομής δεδομένων στον οποίο ένας κόμβος περιέχει δείκτες στον προηγούμενο κόμβο του καθώς και στον επόμενο κόμβο. Ο πρώτος κόμβος του λίστα περιέχει επίσης τη διεύθυνση του τελευταίου κόμβου στον προηγούμενο δείκτη του. ΕΝΑ κυκλική διπλά συνδεδεμένη λίστα φαίνεται στο παρακάτω σχήμα.

Συνιστάται: