hallo , ich habe die aufgabe, einen Counting Sort zu implementieren. Komme nun aber einfach nicht weiter ... wäre nett wenn mir jemand helfen könnte.
das habe ich bis jetzt:
das wird mir als Fehler beim compilieren angezeigt:
:20: error: illegal start of expression
static void zaehlen (int[]array, k)
Vielen Dank schonmal für eure Antworten.
das habe ich bis jetzt:
Java:
import java.util.*;
class zählen
{
public static void main(String[] args)
{
int n = 1; // Anzahl der Elemente des Arrays
int[] array = new int[n];
// Zufallsgenerator:
Random rnd = new Random();
for (int i=0; i<array.length; i++)
{
array[i] = rnd.nextInt(10*n)+1; // Zufallszahlen zwischen 1 und 10n
}
zaehlen(array,k);
static void zaehlen (int[]array, k)
{
int k = max_value(); // Maximum in Array
int neu[] = new int[array.length];
int hilf[] = new int[k+1]; // +1 ?
for( i= 0 ; i<k+1 ; i++) // Erzeugung eines Arrays mit 0
{
hilf[ i ] = 0;
}
for(i = 0 ; i<array.Length; i++) // Anzahl der Häufigkeit einer Zahl
{
hilf[array[i]] = hilf[array[i]] + 1;
}
for( i = 0 ; i<k+1 ; i++) // Addieren des Hilf-Arrays (bis zu welcher Position eine Zahl auftaucht)
{
hilf[i] = hilf[i] + hilf[i + 1];
}
for(i = array.length-1;i>=0 ; i--) // Sortieren in neues Array (von hinten nach vorne)
{
neu[hilf[array[i]] - 1 ] = array[i]; // Werte werden ins neue Array geschrieben --> -1 weg?
hilf[array[i]] = hilf[array[i]] - 1; // um 1 vermindert
}
}
}
}
das wird mir als Fehler beim compilieren angezeigt:
:20: error: illegal start of expression
static void zaehlen (int[]array, k)
Vielen Dank schonmal für eure Antworten.