Far funzionare la mia specie di bolla con una doppia lista collegata
-
27-10-2019 - |
Domanda
Ho cercato di ottenere una bubble ordinando un doppio elenco di collegamenti e ho letto su Internet per farla funzionare con un singolo elenco collegato sarebbe più facile, quindi l'ho provato e questo è il mio codice
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;
}
Come cambierei per funzionare con un doppio elenco collegato?
Soluzione
Dal tuo punto di vista dell'implementazione, non importa se si tratta o meno di un elenco doppiamente collegato, per la parte di smistamento (gorgogliante) almeno perché stai semplicemente cambiando il contenuto anziché i puntatori.
Altri suggerimenti
Se si modificano solo il contenuto (dati) di ciascun nodo e non sposti i nodi stessi, non vedo alcun motivo per cambiare nulla.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow