Kein wirklicher Ansatz

Status
Nicht offen für weitere Antworten.

Sued_Faust

Bekanntes Mitglied
Moin leute,

brauch ma wieder bisl Hilfe.
Dies ist meine Aufgabe:

Man kann sich mit einfachen Mitteln einen ¨Uberblick ¨uber das Laufzeitverhalten von Sortieralgorithmen
verschaffen, indem man einen solchen Algorithmus auf ein Array anwendet, welches mit
Zufallszahlen gef¨ullt ist. Dabei z¨ahlt man dann innerhalb des Algorithmus z. B. die Bewegungen
von Elementen und stellt diese Anzahl auf dem Bildschirm dar wie unten angedeutet.
Im Folgenden ist eine m¨ogliche Anwendungsklasse eines solchen Programms abgedruckt, die f¨ur
Zwecke dieser Aufgabe so verbindlich vorgeschrieben ist. Sie stellt sozusagen den ”Kundenwunsch“
dar.
Schreiben Sie die erforderlichen Klassen, um die abgedruckte main-Methode starten zu k¨onnen.
Implementieren Sie hier die Algorithmen Bubble-Sort, Merge-Sort und Quick-Sort.

...Soweit so gut ...

Hier der Vorgegeben Code...

Code:
1 import java.util.*;
2 class Experiment {

3 public static void main (String[] args) {

4 int numberExperiments = 5; // number of experiments
5 int numberElements = 500; // number of elements array
6 int maxRand = 1000; // random numbers 0..maxRand-1
7 int scale = 1700; // scale for plotting
8 // Integer.MAX-VALUE = 2,147,483,647
9 // for reference: largest value allowed
10 int[]a;
11 Random rd = new Random();
12 int[]result = new int [numberExperiments];
13
14 // Bubble-Sort
15 BubbleSort bs = new BubbleSort();
16 for (i = 0; i < numberExperiments; i++)f 17 a = Utils.allocateRandArray(rd,maxRand,numberExperiments);
18 bs.sort(a,numberElements);
19 result[i] = bs.count;
20 }
21 Utils.simplePlot(“BubbleSort“,result,scale);
22
23 // other sorting algorithms
24 // ...
25 } 
26 }

Mein Problem .... Ich versteh nicht wiklich was die hier von mir wollen ... Also schon das ich die Algorithmen einbinden soll ... aber nicht was ich mit den vorgegeben Variablen soll und vorallem nicht was plotting ist :(

ich bin erlichgesagt ziemlich verwirrt ... sitze schon über ne woche dran und komm auf keine vernümpftige Lösung!!

vieleicht weiß einer von euch was damit gemeint ist ...

danke euch schon mal :)

gruß Patrick
 
S

SlaterB

Gast
na das ist doch relativ klar
(ok, ich musste selber auch mal so eine Aufgabe machen ;), wer nicht? )

erstmal das zählen:
Liste 3,2,1
BubbleSort: 3 und 2 vertauschen, Zähler erhöhen,
weitere Tauschs, weiter Zähler erhöhen,

bei anderen Algorithmen gibts ähnliche elementare Schritte, die man zählen kann

--------

Anzeige:
Durchgang 1: Zähler 500
Durchgang 2: Zähler 700
Durchgang 3: Zähler 900

->
Code:
      |
   |  |
|  |  |
|  |  |
---------------
1 2 3
eine einfache Grafik eben,
hast du denn Utils.simplePlot() vorgegeben oder sollst du das auch bauen? ;)
 

Sued_Faust

Bekanntes Mitglied
ne das ist alle was ich vorgegeben bekjommen habe ...

also ich verstehe ja wie der Algo funktioniert ... aber mit den Vorgegebenen Werte komm ich nicht klar ... ich weiß nicht was ich für was benutzen soll zb. bei Sort wird ein Array und 500 übergeben aber wofür die 500 ??? ich steig da nicht durch :(

und mit der Grafischen darstellung ... he he .. soweit hab ich mir noch keine gedanken gemacht ... aber währe sicher meine nächst frage gewährsen :)

gruß
 
S

SlaterB

Gast
> und vorallem nicht was plotting ist

war schon deine Frage ;)

-----

einen Sinn in der Angabe der Anzahl der Elemente in der sort-Operation sehe ich auch nicht,
das Array ist genauso lang, also hat man diese Info bereits,

aber stört doch nicht, ignoriere den Parameter oder freue dich,
nicht erst eine lokale Variable definieren zu müssen,


evtl. interessant: man übergibt ein großes Array (10000), will aber aktuell nur die ersten 100 sortieren,
tritt hier wohl nicht auf, aber ist ganz nützliches Feature
 

Sued_Faust

Bekanntes Mitglied
Ja stimmt aber da wußte ich noch nicht was das ist ^^ ...

also so wirklich klar ist mir das mit den Variablen immer noch nicht ...

Code:
for (i = 0; i < numberExperiments; i++){
 a = Utils.allocateRandArray(rd,maxRand,numberExperiments);
 bs.sort(a,numberElements);
 result[i] = bs.count;
}

so um das mal genauer zu Analysieren ....

in dieser Schleife wird zu erst eine Methode aufgerufen die den Array mit zufallszaheln füllen soll ...
So da habe ich einfach mal das hier vorbereitet!!!^^

Code:
public int[] allocateRandArray(Random n ,int maxRand, int numExp){
		int[]b = new int [numExp];
		
		for(int i = 0; i < b.length; i++)
	    {
			b[i] = 1 + Math.abs(n.nextInt()) % maxRand;
	    	
	    	System.out.println("Zahl Nr.: " + i + " | " + b[i]);
	    }	    
		System.out.println("------------------");
		return b;
	}

bin mir nicht sicher ob ich die Variablen richtig eingesetzt habe aber vieleicht hast du/ihr ja ne ahnung...

zurück zum Ablauf...

nun wo wir den Array in der Schleife haben sollte er wohl auch sortiert werden :).
Die Frage ist nur wo soll der Algo. in dieser schleife durchlaufen werden oder soll ich dafür also so :

Code:
for (int i = 0; i < numberExperiments; i++){ 
		 a = Utils.allocateRandArray(rd,maxRand,numberExperiments);
		 
	
	     {  for (int k=0; k<numberExperiments-i; k++)
	        { if (a[k]>a[k+1]) { 
	        //	count[k]=count[k]+1;
	        	int ablage = a[k];
	            a[k] = a[k+1];
	            a[k+1] = ablage;; 
	        	}
	        }
	     } 
		 	
		 bs.sort(a,numberElements);
		 result[i] = bs.count;
		 }

natürlich müsste wie ich es verstehe die Sort-Methode in der If-Anweisung aufgerufen werden in der dann die eigendliche vertauschung statt finden sollte.

wobei ich da nun wieder nicht verstehe was zum teufel ich mit dem Array "a" und der Variable numberElements soll
ich bin verzweifelt :(.

ich hatte noch nie sone Probleme mit Programmiereung

gruß
 
S

SlaterB

Gast
> bin mir nicht sicher ob ich die Variablen richtig eingesetzt habe aber vieleicht hast du/ihr ja ne ahnung...

ich erklär doch nicht jeden Schritt..,
warum sollte etwas falsch oder richtig gesetzt sein,
kannst du das Endergebnis nicht prüfen?
"ein Array mit n Zufallszahlen", ist doch nicht schwer zu verstehen,
warum denkst du, dass du etwas falsch hast?

> natürlich müsste wie ich es verstehe die Sort-Methode in der If-Anweisung aufgerufen

kein korrekter Satz, weiß nicht was du meinst,
Tipp: den vorgegeben Code in keiner einzigen Zeile verändern,
du sollst nur die angegebenen Operationen (in den externen Klassen) definieren und füllen..

> wobei ich da nun wieder nicht verstehe was zum teufel ich mit dem Array "a" und der Variable numberElements soll

bist du jetzt an dem Punkt, dass du nicht weißt, wie ein BubbleSort funktioniert?

dann lass doch dieses komplizierte Programm weg,
hier ich geb dir ein einfacheres zum füllen:

Code:
public class Test {
  public static void main(String[]args) {
     int[] test = new int[]{4,15,3,5,1};
     // sort-Aufruf
     // Ausgabe, Systen.out.println
  } 
}
mach erstmal das, bevor du wieder das komlizierte Programm anschaust..
nix mit Zufall, Plotter oder was sonst stören könnte

wie man sortiert? na das ist ja sowas von grundsätzlich,
Lehrbücher, google, Forumsuche,
Bubblesort ist doch ein extrem spezifischer Suchbegriff
 

mic_checker

Top Contributor
Stör dich nicht an der variable zur größenangabe des arrays. nicht jede programmiersprache machts einem so leicht wie java, so dass du nicht immer ".length" auf das Array aufrufen kannst und du hast die Größe.
Dient einfach als Begrenzungsvariable um die Aufgabenstellung allgemein zu formulieren.

Zu deiner andern Frage. Versteh dein Problem nicht. Du hast ne Klasse BubbleSort und da drin eine Methode sort, die die spezifizierten Parameter hat. In sort implementierst du den eig. Algorithmus.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
Jul1n4tor Scanner error bei Eingabe die kein Integer ist Java Basics - Anfänger-Themen 4
M intelliJ auf neuem PC, plötzlich kein Code Java Basics - Anfänger-Themen 3
K Schleife berechnet kein Ergebnis (Vererbung) Java Basics - Anfänger-Themen 6
C Kein Zugriff auf Klassenmethoden in Main Methode Java Basics - Anfänger-Themen 23
Nina Pohl Ein Vorgang bezog sich auf ein Objekt, das kein Socket ist Java Basics - Anfänger-Themen 6
M Kein Shortcut? Java Basics - Anfänger-Themen 7
moiss002 Umgebungsvariable Kein Zugriff auf ein Array Java Basics - Anfänger-Themen 7
GermanPie Fehler in Putty (kein Hauptmanifestattribut, in jar) Java Basics - Anfänger-Themen 4
Z Kein überprüfen des gesamten Arrays möglich.(Viergewinnt Spiel) Java Basics - Anfänger-Themen 6
B Methoden Methoden haben kein Zugriff auf variablen Java Basics - Anfänger-Themen 4
B Warum bekomme ich kein Bild. Java Basics - Anfänger-Themen 10
D kein hauptmanifestattribut in dateiname.jar Java Basics - Anfänger-Themen 14
X Methode bei mehrfachen Aufruf kein Effekt Java Basics - Anfänger-Themen 3
Z Warum kein Dreieck aus Sternen? Java Basics - Anfänger-Themen 9
T In C:\java\bin wird kein javac angezeigt. Java Basics - Anfänger-Themen 1
B Wieso gibt das Programm in der Console kein Ergebnis aus? Java Basics - Anfänger-Themen 2
N kein Sound beim Öffnen der jar-Datei, in Eclipse schon Java Basics - Anfänger-Themen 1
I Shutdown wenn kein Strom verfügbar Java Basics - Anfänger-Themen 4
K Interface Kein Bild im .jar-File Java Basics - Anfänger-Themen 15
X Best Practice SUCHE ein gutes Javabuch! (kein Anfang von 0) Java Basics - Anfänger-Themen 5
N Input/Output Wenn kein Input, dann Fehler anzeigen lassen im JFrame Java Basics - Anfänger-Themen 6
H Kein Zugriff auf das Element einer JList möglich: Fehlermeldung Java Basics - Anfänger-Themen 2
J Umgebungsvariable Programmfenster zeigt kein Bild an Java Basics - Anfänger-Themen 1
T Objektorientierte Programmierung - Kein Plan wieso das nicht funktioniert! Java Basics - Anfänger-Themen 6
B Compiler-Fehler 86:11: error: ';' expected obwohl kein ";" hingehört! Java Basics - Anfänger-Themen 10
T Compiler-Fehler Methode ist Abstrakt obwohl kein Schlüsselwort gesetzt wurde Java Basics - Anfänger-Themen 5
V Kann kein Java Projekt mehr mit Eclipse erstellen Java Basics - Anfänger-Themen 5
Joew0815 Methoden Objekt als Methoden-Parameter - Kein call-by-reference? Java Basics - Anfänger-Themen 12
J Warum kein new ? Java Basics - Anfänger-Themen 10
D Kein Zugriff auf JFrame Java Basics - Anfänger-Themen 2
C Klassen Wieso kein infiniter Regress? Java Basics - Anfänger-Themen 4
N Kein Zugriff auf Ordner -> NullPointerException Java Basics - Anfänger-Themen 2
I kein zugriff auf jList oder Textfield Java Basics - Anfänger-Themen 2
X Fehler beim Öffnen von Jar Datei: "kein Hauptmanifestattribut" Java Basics - Anfänger-Themen 5
D Classpath Kein Zugriff Java Basics - Anfänger-Themen 9
Xendarii Quicksort gibt kein Ergebnis aus Java Basics - Anfänger-Themen 13
K Warum ist ein Singleton kein Best Practise? Java Basics - Anfänger-Themen 3
J ResultSet.getStrin - doch kein String? oder wo liegt das Problem? Java Basics - Anfänger-Themen 3
Kenan89 JScrollPane, aber kein Scrollbalken Java Basics - Anfänger-Themen 4
G Generics kein Zugriff auf getter eines Objekts Java Basics - Anfänger-Themen 4
M In Netbeans kein Problem, im Terminal schon Java Basics - Anfänger-Themen 3
E Kein Rechtzeitiger Abbruch bei Rekursiverfunktion Java Basics - Anfänger-Themen 8
C Stringeingabe: kein Satz wegen Leerzeichen möglich Java Basics - Anfänger-Themen 3
I Warum kein this in Methode Java Basics - Anfänger-Themen 17
V Kein neuer Thread trotz Runnable Java Basics - Anfänger-Themen 4
H Erste Schritte Kein Zugriff auf einen button der ein Ereignis ausgelöst hat Java Basics - Anfänger-Themen 2
M Kann kein Objekt (AudioFile in diesem Beispiel) für ein leeren String erzeugen Java Basics - Anfänger-Themen 3
K SWT Fehler obwohl kein SWT benutzt wird Java Basics - Anfänger-Themen 4
L String: Objekt und doch kein Objekt? Java Basics - Anfänger-Themen 5
J Warum kein return wert? Java Basics - Anfänger-Themen 10
S kein sound? Java Basics - Anfänger-Themen 3
T JTextPane - setText kein kein neuladen der Bilder? Java Basics - Anfänger-Themen 8
L Kein System.out Java Basics - Anfänger-Themen 14
T Warum öffnet sich kein Fenster? Java Basics - Anfänger-Themen 3
c_sidi90 jTextarea kein Zeilenumbruch erlauben Java Basics - Anfänger-Themen 4
M Kein Sound in der .jar, davor schon Java Basics - Anfänger-Themen 6
alderwaran closed source jar, kein javadoc. was macht methode x eigentlich? ( oracle forms pjc beans ) Java Basics - Anfänger-Themen 2
K Arrays - Komma zu viel, kein Problem? Java Basics - Anfänger-Themen 3
G erweiterte for schleife kein new? Java Basics - Anfänger-Themen 4
I Kein Zugriff auf erstelltes Objekt aus anderer Methode Java Basics - Anfänger-Themen 6
C warum liefert equals kein TRUE Java Basics - Anfänger-Themen 12
T meinThread.wait(); wirft immer Exeption & hat kein Effekt Java Basics - Anfänger-Themen 15
Houly kein bild im JFrame bei Mp3 Wiedergabe Java Basics - Anfänger-Themen 5
T Jar-Archive kein System.out.println()?? Java Basics - Anfänger-Themen 5
W "Kein korrekter Schleifendurchlauf" Java Basics - Anfänger-Themen 3
S Kein Event bei Click auf JComboBox Java Basics - Anfänger-Themen 4
radiac Wieso bekomme ich kein Bild drauf??? Java Basics - Anfänger-Themen 13
W peinliches Problem - Kein Konstruktor? Java Basics - Anfänger-Themen 10
Spot84 kein interface iEditorInput Java Basics - Anfänger-Themen 2
Kasoki Compilen von Java Scripts (Nein kein JavaScript xD) Java Basics - Anfänger-Themen 13
G Logger mag kein Linux Java Basics - Anfänger-Themen 3
M erzugt kein objekt Java Basics - Anfänger-Themen 18
L Kein Zugriff auf Listen in einem Array Java Basics - Anfänger-Themen 2
G GUI von wiederholender Methode füttern; kein Programmende Java Basics - Anfänger-Themen 2
K kein Sound beim Öffnen der jar-Datei, in Eclipse schon Java Basics - Anfänger-Themen 2
P Eclipse startet kein Applet Java Basics - Anfänger-Themen 6
G Kein EJB-Package vorhanden Java Basics - Anfänger-Themen 2
A kein zugriff auf variable trotz public? Java Basics - Anfänger-Themen 3
F Seltsame Zeichen und kein Zeichenumbruch mit Filewriter Java Basics - Anfänger-Themen 4
S Kein Zugriff auf Files in Jar-Datei Java Basics - Anfänger-Themen 4
C Kann kein Java Programm starten Java Basics - Anfänger-Themen 8
G Auf Bildschirm (kein Fenster) schreiben Java Basics - Anfänger-Themen 2
G kein Zugriff auf eine Klasse in einem Unterordner Java Basics - Anfänger-Themen 11
M Prüfen, ob Tag im Jahr kein Samstag/Sonntag ist Java Basics - Anfänger-Themen 7
G kein text im dialogfeld Java Basics - Anfänger-Themen 3
K JavaKara Programm - erfolgreich compiliert jedoch kein Start Java Basics - Anfänger-Themen 12
M SystemTray zeigt kein Icon an Java Basics - Anfänger-Themen 11
L Warum öffnet sich aus einer .jar-Datei kein Dosfenster? Java Basics - Anfänger-Themen 5
G Listen, über Listen. und doch kein Überblick Java Basics - Anfänger-Themen 8
I translate.java - kein sichtbarer fehler im quelltext Java Basics - Anfänger-Themen 18
F Kann kein Programm über die Konsole ausführen Java Basics - Anfänger-Themen 5
G Habe bei String kein split()? Java Basics - Anfänger-Themen 7
G Kein Runden Java Basics - Anfänger-Themen 3
G readln, aber kein writeln :( Java Basics - Anfänger-Themen 12
G Kein main Type? Java Basics - Anfänger-Themen 3
R Klasse nicht sichtbar(kein private-Fehler) Java Basics - Anfänger-Themen 2
H kein lösungs ansatz mit java Java Basics - Anfänger-Themen 4
S Layout Probleme (Kein Adden möglich) Java Basics - Anfänger-Themen 18
M JSP: Cookies setzen ist kein Problem, aber wieder ändern ??? Java Basics - Anfänger-Themen 3
W mehrere Strings vergleichen, (kein equal-Problem) Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben