Ich habe die Aufgabe ein BubbleSort Algorithmus zu schreiben der abwechselnd von klein zu groß sortiert, also Index 0 ist die kleinste Zahl, Index 1 die größte, Index 2 die zweit kleinste, Index 3 die zweit größte usw. Ich habe versucht das Problem zu lösen indem ich einmal einen BubbleSort der ascending Sortiert habe und einen der descending Sortiert, dann habe ich eine Variable k eingeführt, die bestimmen soll ob nun aufsteigend oder absteigend sortiert werden soll. Wenn ich jetzt aber versuche das Programm zu starten kommt in der Konsole keine Ausgabe, obwohl ich alle Fehler die Eclipse mir anzeigt entfernt habe. Ich übersehe also was, kann es aber nicht finden.
Hier der Code:
public class Functionality{
public static void alternateSorting(int[] a)
{
a = new int[] {5,4,6,3,4,9};
int k = 0;
if (k % 2 == 0) {
for (int i = 0; i < a.length; i++)
{
int pos = i;
for (int j = i + 1; j < a.length; j++)
{
if (a[j] < a[pos])
{
pos = j;
}
}
if (pos != i)
{
int swap = a;
a = a[pos];
a[pos] = swap;
}
k++;
}
System.out.println(a);
}else
{ for (int i = 0; i < a.length - 1; i++)
{
int index = i;
for (int j = i + 1; j < a.length; j++)
{
if (a[j] > a[index])
{
index = j;
}
}
if (index != i)
{
int temp = a;
a = a[index];
a[index] = temp;
}
k++;
}
System.out.println(a);;
}
}
}
Ich würde mich über einen Ratschlag freuen.
MfG Bun17
Hier der Code:
public class Functionality{
public static void alternateSorting(int[] a)
{
a = new int[] {5,4,6,3,4,9};
int k = 0;
if (k % 2 == 0) {
for (int i = 0; i < a.length; i++)
{
int pos = i;
for (int j = i + 1; j < a.length; j++)
{
if (a[j] < a[pos])
{
pos = j;
}
}
if (pos != i)
{
int swap = a;
a = a[pos];
a[pos] = swap;
}
k++;
}
System.out.println(a);
}else
{ for (int i = 0; i < a.length - 1; i++)
{
int index = i;
for (int j = i + 1; j < a.length; j++)
{
if (a[j] > a[index])
{
index = j;
}
}
if (index != i)
{
int temp = a;
a = a[index];
a[index] = temp;
}
k++;
}
System.out.println(a);;
}
}
}
Ich würde mich über einen Ratschlag freuen.
MfG Bun17