Was bedeutet dieser ausdruck?

spyke

Mitglied
Java:
/**
public class sortieren {

  // Anfang Attribute
  // Ende Attribute



  // Anfang Methoden
  public static void main(String[] args) {

         int anz = 1000;
         int [] zahlen = new int [1000];
         int temp;
  
    for (int i=0; i<anz; i++){
    zahlen [i] = (int) (Math.random()*90+10);
    }

    for (int i=0; i<anz-1;i++){
    for (int k=0; k<anz-1;k++){
    if (zahlen[k]>zahlen[k+1]) {

    temp = zahlen[k];
    zahlen[k] = zahlen[k+1];
    zahlen[k+1] = temp;
     }

     }
}
for (int i=0; i<1000;i++) {
  System.out.println(zahlen[i]);
}
}
  // Ende Methoden
}

Kann mir jemand sagen was das bedeutet?

Java:
for (int i=0; i<anz-1;i++){
    for (int k=0; k<anz-1;k++){
    if (zahlen[k]>zahlen[k+1]) {
also eine for schleife geht die Zahlen von 0 - 1000-1
die 2te genauso
was heißt: zahlen[k]? Werden die Zahlen von 0 - 1000-1 im "zahlen[k]" gespeichert?
 

XHelp

Top Contributor
Der Code, so wie er da steht, macht nicht wirklich Sinn. Sieht aber ein wenig nach BubbleSort aus. Das i muss irgendwie in die Bedingungen der 2. Schleife einfließen. Vermutlich so:
Code:
k<anz-1-i
 

sicLotus

Bekanntes Mitglied
das k ist lediglich der index, welchen du in deinem programm von 0-999 gewählt hast..
mit zahlen[k] greifst du auf den index zu, und somit auf die zahl, die an diese stelle steht..

wenn deine random folgende 5 zahlen generiert hast:
99,5,12,75,1

Dann steht an zahlen[0]=99
und an zahlen[4]=1
 

XHelp

Top Contributor
zahlen[k] ist dein k.tes Element aus dem Array
Code:
zahlen
.
Mal angenommen du hast 1000 Zahlen, also würden die Schleifen 999 mal die ersten 999 Einträge durchgehen und das Maximum davon nach ganz rechts bringen.
 

JavaN3rd

Mitglied
Hey

Zuerst mal Klassennamen sollte man gross schreiben und der Code ist schlecht formatiert. (tut mir leid).
Nun zu deiner Frage:
Die Syntax array[index] bescreibt den wert der Liste an der Stelle des Indexes, diese Syntax kann wie eine Variable verwendet werden, d.h. du kannst mit dem Wert rechnen usw. und eben auch einen neuen Wert abspeichern.

Der Code in der inneren for-Schleife (mit k) macht folgendes:
Er geht die liste durch und wenn der Wert des aktuellen indexes grösser als der folgende ist, werden sie getauscht. Dies wird (mit der äusseren for-Schleife soviel mal gemacht wie die liste lang ist) dadurch ist sie nachher sortiert.

Bsp.
{0,2,3,5,1,8}
1. Schritt (bezeichnet die durchläufe der äusseren for-Schleife): {0,2,3,1,5,8}
2. Schritt: {0,2,1,3,5,8}
3. Schritt: {0,1,2,3,5,8}
und die Liste ist sortiert.

Wie man sieht ist die maximale Anzahl Schritte gleich der Listenlänge (wenn das kleinste Element gerade zuäusserst ist).
 

XHelp

Top Contributor
Nicht die Maximale Anzahl an Schritten, sondern Anzahl an Schritten. Die Abbruchbedingungen stimmen nicht, deswegen würde man in deinem Beispiel 5 Mal die Liste durchlaufen. Außerdem sollte Bubblesort aufhören, sobald er in einem Schritt nichts getauscht hat
 

spyke

Mitglied
Hey

Zuerst mal Klassennamen sollte man gross schreiben und der Code ist schlecht formatiert. (tut mir leid).
Nun zu deiner Frage:
Die Syntax array[index] bescreibt den wert der Liste an der Stelle des Indexes, diese Syntax kann wie eine Variable verwendet werden, d.h. du kannst mit dem Wert rechnen usw. und eben auch einen neuen Wert abspeichern.

Der Code in der inneren for-Schleife (mit k) macht folgendes:
Er geht die liste durch und wenn der Wert des aktuellen indexes grösser als der folgende ist, werden sie getauscht. Dies wird (mit der äusseren for-Schleife soviel mal gemacht wie die liste lang ist) dadurch ist sie nachher sortiert.

Bsp.
{0,2,3,5,1,8}
1. Schritt (bezeichnet die durchläufe der äusseren for-Schleife): {0,2,3,1,5,8}
2. Schritt: {0,2,1,3,5,8}
3. Schritt: {0,1,2,3,5,8}
und die Liste ist sortiert.

Wie man sieht ist die maximale Anzahl Schritte gleich der Listenlänge (wenn das kleinste Element gerade zuäusserst ist).

Und wie geht es weiter mit der if schleife?
Java:
for (int i=0; i<anz-1;i++) {
    
      for (int k=0;k<anz-1;k++) {
      
       if (zahlen[k]>zahlen[i]){
        temp=zahlen[k];
        zahlen[k]=zahlen[k+1];
        zahlen[k+1]=temp;

was sind jetzt zahlen[k] und zahlen?
 

XHelp

Top Contributor
if-schleife.de
Code:
zahlen[i]
steht doch gar nicht in deinem ursprünglichem Code...
Wenn da wie vorher k+1 steht, dann:
- Wert mit dem Nachbar vergleichen und das größere Element nach rechts bringen.
Spiele doch den Algo auf einem Zettel mit einem {5,3,7,2,1,9,0} array durch.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
N Was bedeutet dieser Fehler Java Basics - Anfänger-Themen 2
P Was bedeutet dieser Fehler? Java Basics - Anfänger-Themen 31
S Erste Schritte Was bedeutet dieser Code? Java Basics - Anfänger-Themen 2
D Erste Schritte Was bedeutet dieser Code? Java Basics - Anfänger-Themen 23
0 Was bedeutet dieser Generic-code? Java Basics - Anfänger-Themen 3
onlyxlia Was bedeutet das @Override? Java Basics - Anfänger-Themen 1
W Streams in Java und was bedeutet meine Konsolen-Ausgabe? Java Basics - Anfänger-Themen 4
S Was bedeutet ungleich (in diesem Zusammenhang)? Java Basics - Anfänger-Themen 2
S Was bedeutet das Zeichen := Java Basics - Anfänger-Themen 9
H Was bedeutet das: [I@7d4991ad? Java Basics - Anfänger-Themen 20
MiMa Was bedeutet unchecked or unsafe operations? Java Basics - Anfänger-Themen 6
ZH1896ZH OOP Verstehe nicht was der Hinweis bedeutet, bitte um Hilfe! Java Basics - Anfänger-Themen 2
O Was bedeutet das hier 999_983? Java Basics - Anfänger-Themen 2
D Was bedeutet diese Schreibweise? Java Basics - Anfänger-Themen 9
W Was bedeutet im Struktogramm „zufall“ aufrufen (keine Parameterübergabe)? Java Basics - Anfänger-Themen 8
R Was bedeutet -1 Java Basics - Anfänger-Themen 2
V OOP Was bedeutet das "aBruch" Java Basics - Anfänger-Themen 6
U Was bedeutet $@ in der Linux Kommandozeile Java Basics - Anfänger-Themen 3
dave253 Was bedeutet (String args[])? Java Basics - Anfänger-Themen 6
D was bedeutet this. bei Konstruktoren? Java Basics - Anfänger-Themen 4
N Was bedeutet "Implementierung vor dem Client verbergen" bei Design Patterns? Java Basics - Anfänger-Themen 2
G Methoden Was bedeutet return in einer Methode Java Basics - Anfänger-Themen 5
V Was bedeutet das? Java Basics - Anfänger-Themen 4
G zeile: Was bedeutet das in der Methode? Java Basics - Anfänger-Themen 4
Y Was bedeutet "this" ohne dem Punkt und dem Atrributnamen danach? Java Basics - Anfänger-Themen 2
M was bedeutet setEnabled Java Basics - Anfänger-Themen 12
F Was bedeutet '@'? Java Basics - Anfänger-Themen 3
F Frage von einem Neuling: Was bedeutet Scanner scanner ? Java Basics - Anfänger-Themen 5
K Schlüsselworte Was bedeutet oder was ist die SIGNATUR?? Java Basics - Anfänger-Themen 4
O Was bedeutet public class value? Java Basics - Anfänger-Themen 3
A Was bedeutet der Operator *= ? Java Basics - Anfänger-Themen 2
N Was bedeutet << Java Basics - Anfänger-Themen 5
G Was bedeutet diese Zeile? Java Basics - Anfänger-Themen 2
J Was bedeutet This. ? Java Basics - Anfänger-Themen 4
D Was genau bedeutet und bewirkt dieses @override? Java Basics - Anfänger-Themen 15
J Was bedeutet dieses a [i].length? Java Basics - Anfänger-Themen 3
D Was bedeutet < > Java Basics - Anfänger-Themen 4
D Was bedeutet das ?: Java Basics - Anfänger-Themen 9
B Was bedeutet static<T>?? Java Basics - Anfänger-Themen 6
php1 Was bedeutet der Modifier static ? Java Basics - Anfänger-Themen 3
K Was bedeutet das eigentlich.... Java Basics - Anfänger-Themen 18
G Was bedeutet? Java Basics - Anfänger-Themen 7
G Was bedeutet charAt()? Java Basics - Anfänger-Themen 5
J Was bedeutet der Doppelpunkt ":" ? Java Basics - Anfänger-Themen 3
G was bedeutet //TODO Java Basics - Anfänger-Themen 4
A Was bedeutet folgende Programmcodezeile genau Java Basics - Anfänger-Themen 6
B was bedeutet "this" Java Basics - Anfänger-Themen 8
L Was bedeutet das Wort "this" ? Java Basics - Anfänger-Themen 2
K was bedeutet '?' Java Basics - Anfänger-Themen 3
R Was bedeutet diese Zeile. Java Basics - Anfänger-Themen 8
S was bedeutet Typisiert? Java Basics - Anfänger-Themen 3
D Was bedeutet : ? Java Basics - Anfänger-Themen 4
M public static void main(String... args)<- Was bedeutet das? Java Basics - Anfänger-Themen 5
H Was bedeutet "class Liste<E>" Java Basics - Anfänger-Themen 2
J was bedeutet null Java Basics - Anfänger-Themen 7
padde479 Compiler-Frage: Was bedeutet deprecated? Java Basics - Anfänger-Themen 4
P Was genau bedeutet Feld Java Basics - Anfänger-Themen 3
G Was bedeutet diese Fehlermeldung von Tomcat Java Basics - Anfänger-Themen 29
G indexOf() - was bedeutet -1 ? Java Basics - Anfänger-Themen 27
P Was genau bedeutet "public static void main(String[] ar Java Basics - Anfänger-Themen 10
G setName bei JTextfield. Was bedeutet das? Java Basics - Anfänger-Themen 7
B Was bedeutet synchronized? Java Basics - Anfänger-Themen 8
D was bedeutet " Seiteneffekt " ? Java Basics - Anfänger-Themen 4
ohneInformatik; For Schleife. Was macht dieser Code?? Java Basics - Anfänger-Themen 5
K Warum zeigt dieser reguläre Ausdruck true an? Java Basics - Anfänger-Themen 1
Leo0909 Ich brauche Hilfe bei dieser Aufgabe Java Basics - Anfänger-Themen 2
P Nutzer entscheiden lassen, wie viele Zahlen dieser in ein Array eingeben möchte. Java Basics - Anfänger-Themen 6
M Warum dürfen Objekte einer Klasse auf statische Variablen dieser Klasse referenzieren? Java Basics - Anfänger-Themen 10
Bluedaishi Hilfe beim erklären dieser Methode Java Basics - Anfänger-Themen 5
S Warum dieser Fehler? Java Basics - Anfänger-Themen 1
B Datum in dieser Range SQL? Java Basics - Anfänger-Themen 3
R Dieser Code sagt mir nichts... Java Basics - Anfänger-Themen 4
D Erste Schritte Lösen dieser Aufgabe, Hilfe! Java Basics - Anfänger-Themen 12
J Brauche Hilfe bei dieser Aufgabe Java Basics - Anfänger-Themen 3
F Wieso wird dieser Befehl nicht ausgeführt? (Anfänger) Java Basics - Anfänger-Themen 2
M Frage, wie dieser Code funktioniert, bzw. weshab er bei mir nicht funktioniert Java Basics - Anfänger-Themen 4
L Hilfe! Was macht dieser Code? Java Basics - Anfänger-Themen 1
V Operatoren Warum kommt nicht das gewünschte Ergebnis dieser Operation? Java Basics - Anfänger-Themen 3
R Gibt es Eine einfache Programierung dieser Methoden Java Basics - Anfänger-Themen 8
G Lastet dieser Code den Arbeitsspeicher eines Handys aus? Java Basics - Anfänger-Themen 7
B Was passiert in dieser Methode? Java Basics - Anfänger-Themen 3
Nicole1989 Was Bewirkt dieser Java Code? Java Basics - Anfänger-Themen 4
B Summe aller Zahlen von 1 bis zu dieser Zahl (ohne while oder for schleife) Java Basics - Anfänger-Themen 4
J Wo liegt nur an dieser einfachen Bedingung mein Fehler? Java Basics - Anfänger-Themen 8
A Wieso funktioniert dieser Timer nicht?? Java Basics - Anfänger-Themen 3
C Warum funktioniert dieser Code nicht? Java Basics - Anfänger-Themen 2
A Lässt sich dieser Ausdruck irgendwie einfacher schreiben? Java Basics - Anfänger-Themen 4
H Geht dieser Code noch einfacher (try catch finally) Java Basics - Anfänger-Themen 7
P Geht dieser Code noch einfacher? Java Basics - Anfänger-Themen 16
G Bitte um Erklärung dieser einer Zeile Java Basics - Anfänger-Themen 5
F OOP Warum funktioniert dieser Regex? Java Basics - Anfänger-Themen 15
P Unterschied dieser 2 code Zeilen Java Basics - Anfänger-Themen 12
StrikeTom Was ist an dieser einfachen funktion falsch? Java Basics - Anfänger-Themen 5
M Wieso funktioniert dieser simple Code nicht? Java Basics - Anfänger-Themen 9
M prozess starten und warten bis dieser sich beendet Java Basics - Anfänger-Themen 3
P Was macht dieser Source code? Java Basics - Anfänger-Themen 5
S OOP Wie muss meine Klasse zu dieser main aussehen? Java Basics - Anfänger-Themen 5
H Wie so ein Exception in dieser HashMap? Java Basics - Anfänger-Themen 7
K Was wird in dieser Frage gemeint ? Java Basics - Anfänger-Themen 15
V Wie und wieso geht dieser Methodenaufruf? Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben