Ich arbeite an einer Methode, die das angegebene Element an der richtigen Stelle in der sortierten Liste eingefügt und ich kann das gleiche Element mehrmals einfügen..wie auch immer meine Methode das Element nicht eingefügt und ich konnte ' Finde heraus, warum es nicht das ganze Element in die richtige Position bringt! Das ist mein CodeEinfügen von Element DoubleLinked
Antwort
Bitte nicht die gleiche Frage an StackOverflow zweimal hintereinander. Stattdessen redigiere deine erste Frage.
Zunächst bietet Java eine einfache doppelt verknüpfte Liste. Sie sollten LinkedList<E>
verwenden, anstatt zu versuchen, das Rad neu zu erfinden.
Wie auch immer, Sie haben zwei Probleme. Der erste ist, dass Sie einen speziellen Fall haben, um Dinge vor dem Schwanz und nicht hinter dem Schwanz zu platzieren. Sie haben
if(current==tail){
Node n = new Node(element);
n.next = tail;
tail = n;
size++;
return this;
}
wo diese
if(current == null){
tail.next = d;
d.pre = tail;
tail = d;
return this;
}
Zusätzlich sagen sollte, müssen Sie sicherstellen, dass Sie tatsächlich eine doppelt verknüpfte Liste zu tun. Das heißt,
n.next = head;
head = n;
benötigt
n.next = head;
head.pre = n;
head = n;
Eine weitere Sache - machen eine binäre Suche, nicht eine lineare Suche. Es ist so viel schneller.
Sie sollten sich fragen, wie Ihre Foreach-Schleife wissen soll, wie Sie auf die Werte in Ihrer Liste zugreifen können? Vielleicht ist es in Ihrer Superklasse implementiert, aber funktioniert es auch für Ihre spezielle Liste?
Nur eine Theorie, weil ich keine Ahnung habe, was Sie in Ihrem BasicDoubleLinkedList<T>
implementiert haben, aber ich denke, das ist, wo Sie anfangen sollten zu suchen.
Werfen Sie einen Blick auf die List<E>
Schnittstelle, gibt es mehrere Methoden, könnten Sie überprüfen, ob sie alle korrekt implementiert sind, denke ich nicht. Überschreibe sie einfach und deine Probleme sollten weg sein.
- 1. Matlab: Element nach Element einfügen?
- 2. Element in Header einfügen
- 3. Element in Strom einfügen
- 4. Element einfügen in numpy Array
- 5. JS: Element in Array einfügen
- 6. Element rekursiv in BinaryTree einfügen
- 7. Element vor dem Einfügen mit Jquery entfernen
- 8. Element einfügen in Python-Liste nach jedem n-ten Element
- 9. Web.config transformieren Als erstes untergeordnetes Element einfügen
- 10. Wie Element in c_char_p Array einfügen
- 11. Python: neues Element in sortierte Liste von Wörterbüchern einfügen
- 12. Wie Aktualisieren/Aktualisieren DOM-Element nach dem Einfügen von jQuery
- 13. jquery einfügen BEFORE letztes Element in div
- 14. JQuery - mit .on mit Element einfügen
- 15. Element in verschachtelte Arrays in MongoDB einfügen
- 16. Jquery Element einfügen vor <tr>
- 17. Wie Einfügen Element in der letzten Liste?
- 18. Ein Element in ein Array einfügen
- 19. Objekt in MongoDB-Array-Element einfügen
- 20. XSLT Element einfügen nur, wenn es nicht
- 21. jQuery einfügen nach dem letzten Element
- 22. Ein Element in ein Tupel einfügen
- 23. Element einfügen als Geschwister mit D3js
- 24. numpy.float64-Element in ein nupy-Array einfügen
- 25. Einfügen von Text an dem Punkt Cursor - Einfügen von zur Zeit in das geklickt Element nicht Textfeld
- 26. YUI Editor (RTE): HTML-Element einfügen und Cursor innerhalb
- 27. Element in einen sortierten Vektor einfügen und Elemente sortiert halten
- 28. Inline-Element einfügen und Verschiebung nach links animieren
- 29. Element an beliebiger Position eines n-dimensionalen Arrays einfügen
- 30. Gewähltes Element von Spinner
Entschuldigung, aber Ihr Code und Ihr tatsächliches Ergebnis widersprechen, wo ist 'System.out.print (" Iteration: ")'? !! Ich sehe nur 'System.out.print (" Iteration (für sortierte Liste) ")' – niceman