Hi,
Ich(oder wir, da es eine Gruppenarbeit ist) habe ein kleines Problem bei einer Abgabe für die HS.
Und zwar habe ich folgende Methoden:
-Arrays 2D:
-Arrays 3D:
Array 2D überprüft ob ein Wert ("z") in einem Array vorhanden ist.
Array 3D überprüft wie oft ein Wert ("z") im Array vorhanden ist.
Jetzt wurde wir gefragt welche Komplexität jede dieser Methoden besitzt.
Bei Array 2D haben wir als Komplexität 0(1) als best-case Szenario angegeben.
Dies war laut dem Prof falsch. Was würdet ihr zu Komplexität sagen oder wie würdet ihr sie berechnen?
Ausserdem meinte er, wir sollten die Komplexität verringern. Wie? (Die Fehlerbehebung ist absichtlich)
Bei Array 3D wurden wir, nun vollends verwirrt, wieder nach der Komplexität im best-case Szenario gefragt. Auch hier waren unsere Antworten falsch.
Leider konnten uns die Tutoren auch nicht weiterhelfen...
Ich/wir würden uns sehr über eine Antwort freuen. Vermutlich sind wir hier noch öfters zu Gast
Gruß, MKI
Ich(oder wir, da es eine Gruppenarbeit ist) habe ein kleines Problem bei einer Abgabe für die HS.
Und zwar habe ich folgende Methoden:
-Arrays 2D:
Java:
private static boolean istVorhanden(int[][] data, int z) {
if (data == null || data.length == 0)
return false;
for (int j = 0; j < data.length; j++) {
while (data[j] == null || data[j].length == 0) {
j++;
if (j == data.length)
return false;
}
for (int i = 0; i < data[j].length; i++) {
if (data[j][i] == z)
return true;
}
}
return false;
}
-Arrays 3D:
Java:
private static int getAnzahl(int [][][] data, int z){
if (data==null) return 0;
if (data.length==0) return 0;
int i=0, j=0, k=0; //schleifenvariable
int a1=0;
while (k < data.length) {
if (data[k]==null) k++;
if (data[k].length==0) k++;
while (j < data[k].length) {
if (data[k][j]==null) j++;
if (data[k][j].length==0) j++;
while (i < data[k][j].length) {
if (data[k][j][i] == z)
a1++;
i++;
}
j++;
i = 0;
}
k++;
j = 0;
}
return a1;
}
Array 2D überprüft ob ein Wert ("z") in einem Array vorhanden ist.
Array 3D überprüft wie oft ein Wert ("z") im Array vorhanden ist.
Jetzt wurde wir gefragt welche Komplexität jede dieser Methoden besitzt.
Bei Array 2D haben wir als Komplexität 0(1) als best-case Szenario angegeben.
Dies war laut dem Prof falsch. Was würdet ihr zu Komplexität sagen oder wie würdet ihr sie berechnen?
Ausserdem meinte er, wir sollten die Komplexität verringern. Wie? (Die Fehlerbehebung ist absichtlich)
Bei Array 3D wurden wir, nun vollends verwirrt, wieder nach der Komplexität im best-case Szenario gefragt. Auch hier waren unsere Antworten falsch.
Leider konnten uns die Tutoren auch nicht weiterhelfen...
Ich/wir würden uns sehr über eine Antwort freuen. Vermutlich sind wir hier noch öfters zu Gast
Gruß, MKI