BubbelSort

valentina2013

Bekanntes Mitglied
Hallo ihr lieben,

hier mein sortierProgramm,
public class BubbleSort {
public static void sort(int[]A){

boolean swapped=false;
int n=A.length;

do
{
swapped=false;
for(int i=0; i<n-1;++i){
if(A>A[i+1]){
swap(A,A[i+1]);
swapped=true;
}
}
}
while(swapped&&n>0);


public static void swap(int a,int b){
int temp=A[a];
A[a]=A;
A=temp;
swapped=true;
}
}

public static void main(String[] args) {

int[]B={2,7,12,6,9,0};
sort(B);
for (int i=0; i<B.length; i++)
System.out.print(B+" ");

}
}
die methode swap wird nicht akzeptiert und gibt folgende fehlermeldung
The method swap(int, int) is undefined for the type BubbleSort
void is an invalid type for the variable swap

kann mir einer helfen?warum ist das so, und wie kann ich es verbessern?
danke
 

njans

Top Contributor
Java™ Quelltext ist bitte in
Java:
-Tags zu schreiben!
[/QUOTE]

[code=Java]
private static int[]	A;
	private static boolean	swapped	= false;

	public static void sort(int[] A)
	{
		boolean swapped = false;
		int n = A.length;

		do
		{
			swapped = false;
			for (int i = 0; i < n - 1; ++i)
			{
				if (A[i] > A[i + 1])
				{
					swap(A[i], A[i + 1]); // Du übergibst den Wert an der Stelle i udn i+1, nicht den Index!
					swapped = true;
				}
			}
		}
		while (swapped && n > 0); // n > 0 musst du nicht jedesmal prüfen, wenn n  = 0, dann ist swapped == false
	}

	public static void swap(int a, int b)
	{
		int temp = A[a];
		A[a] = A[b];
		A[b] = temp;
	}

	public static void main(String[] args)
	{

		int[] B = { 2, 7, 12, 6, 9, 0 };
		sort(B);
		for (int i = 0; i < B.length; i++)
			System.out.print(B[i] + " ");
	}

Dein code war einfach nur wirr. Quelltext sinnvoll einrücken, dann sieht man auch wo Klammern falsch sind.

P.S. static ist nicht Objekt Orientiert, daher das ganze lieber dynamisch bauen. Das sollte man lieber früh lernen, sonst kommts leicht zu Problemen (static wegmachen)
 
Zuletzt bearbeitet:

njans

Top Contributor
Das ist das Problem wenn du O(n^2) Algorithmen verwendest. Daher eher Quicksort nehmen oder andere, schnelle Algorithmen.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
A Bubbelsort problem Java Basics - Anfänger-Themen 6
G Bubbelsort probleme Java Basics - Anfänger-Themen 4

Ähnliche Java Themen


Oben