Sortieralgorithmen

Status
Nicht offen für weitere Antworten.

qlimax

Mitglied
Hallo,

ich habe mal eine Frage,

Code:
 	//übergebenes Array (also die Zufallszahlen) wird aufsteigend nach Quicksortverfahren sortiert
	public void quickSort(int[] Array)
	{
		//quickSort mit dem gesamten Array aufrufen
		quickSort(Array, 0, Array.length - 1);							
	}
    //Quicksorverfahren wird "auf" dem Array angewendet
	private void quickSort(int[] Array, int left, int right)
	{
		if(right > left)
		{
			int index = left + (int)((right - left) / 2);				
			int pivot = Array[index];			//Pivot = ein Element nehmen
			
			//swap(Array, index, rechts)
			meineswapDraw(Array, index, right, index, left, right);
			index = left;
			for(int i = index; i < right; ++i)	//solange links < rechts ist
			{									//links jedes mal +1
				if(Array[i] < pivot)
				meineswapDraw(Array, index++, i, index, left, right);
			}
			meineswapDraw(Array, index, right, index, left, right);
			
			quickSort(Array, left, index);		//Linken und Rechten
			quickSort(Array, index + 1, right); //und Rechten bereich Sortieren
		}
	}

Und zwar was macht diese Zeile:

quickSort(Array, 0, Array.length - 1); insbesondere das Array.length - 1

wäre euch sehr dankbar.


mfg Qlimax
 

Leroy42

Top Contributor
qlimax hat gesagt.:
ich habe ein Programm Realisiert das mir 2 Diagramme die aus Zufahlszahlen gezeichnet werden Sortiert werden.

:shock:

Heute schon besoffen? An einem Mittwoch? ???:L

qlimax hat gesagt.:
Und zwar was macht diese Zeile:
quickSort(Array, 0, Array.length - 1); insbesondere das Array.length - 1
:autsch:

Diese Zeile ruft die Methode quickSort mit den angegebenen Parametern auf.

Code:
Array.length - 1
ist der Index des letzten Array-Elements.
 

qlimax

Mitglied
Hi Leroy42,
danke erstmal....

aber was macht diese Zeile genau...
also ich hab ein Array von 15Zahlen...
diese werden per math.Random generiert & dienen der Höhe der Balken....

Zählt der dort was runter oder wie?

mfg Qlimax
 

Leroy42

Top Contributor
qlimax hat gesagt.:
Zählt der dort was runter oder wie?

Nein!
Der linke (0) und der rechte (Array.length-1) Index werden für
den Aufruf der rekursiven Methode
Code:
 private void quickSort(int[] Array, int left, int right)
bestimmt.

Der Effekt ist, daß nach Aufruf dieser Methode, das Array vollständig sortiert ist.

Oder was genau willst du jetzt wissen? ???:L
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Oben