Frage

Ich habe versucht, Bubble -Sortierung eine Doppel -Link -Liste zu erhalten, und ich habe im Internet gelesen, damit sie mit einer einzigen verlinkten Liste funktioniert, wäre einfacher, also habe ich das versucht und dies ist mein Code

public void bubbleSort()
    {
        StudentNode n;
        boolean isSorted=false;

        for(int i=lenght-1; i>1 && isSorted==false; i--)
        {            
            for(int j=0; j<i; j++)
            {
                n=L.head;
                isSorted=true;
                for(int k=0; k n.next.data)
                {
                    isSorted=false;
                    swap(n, n.next);
                }
            }
        }
    }

    public void swap(StudentNode N1, StudentNode N2)
    {
        int temp=N1.data;
        N1.data=N2.data;
        N2.data=temp;

    }

Wie würde ich es ändern, um mit einer doppelt verknüpften Liste zu arbeiten?

War es hilfreich?

Lösung

Aus Sicht Ihrer Implementierung spielt es wirklich egal, ob es sich um eine doppelt verknüpfte Liste handelt oder nicht, für den Sortier (sprudelnden) Teil zumindest, da Sie den Inhalt einfach anstelle von Zeigern ändern.

Andere Tipps

Wenn Sie nur den Inhalt (Daten) jedes Knotens ändern und die Knoten nicht selbst bewegen, sehe ich keinen Grund, etwas zu ändern.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top