Array im Pseudocode?

1 Antwort

Ein Array beginnt mit Stelle 0. Das erste Element im Array ist an der Stelle 0.

Deswegen macht man auch „bis length - 1“, denn die Länge ist in dem Fall 3 Elemente, es gibt aber nur die Stellen 0-2.

Somit läuft die äußere Schleife über die Stellen 0, 1 und 2, und somit über jede Zahl im Array b. (b[0] = 0 | b[1] = 3 | b[2] = 9)

Woher ich das weiß:Studium / Ausbildung – Bachelor in Informatik 👨🏻‍🎓
MrAmazing2  22.01.2021, 09:33
c.get(i)+1

c.get(i) liest das Element aus, das in c an der Stelle i steht. Anschließend wird 1 zu der ausgelesenen Zahl addiert. Das Ergebnis wird dann wieder abgespeichert in c an der selben Stelle.

Kurzgesagt: Der Wert an der Stelle i im Array c wird um 1 erhöht, falls die if-Bedingung davor zutrifft. c ist standardmäßig mit Nullen befüllt.

1
MrAmazing2  22.01.2021, 09:37

Der Algorithmus zählt, wie oft jede Zahl aus b im Array a vorkommt.

Du beginnst mit der 0-ten Stelle von b. Das ist eine 0.

Dann gehst du a Element für Element durch, und wenn dasjenige Element gleich 0 (also der Zahl aus b) ist, dann erhöhst du c an der 0-ten Stelle um 1. Somit zählst du, wie oft das 0-te Element in a vorkam.

Dasselbe dann noch mit 1ter und 2ter Stelle.

1
Lalelilolu297 
Fragesteller
 22.01.2021, 11:25

Habe ich das dann richtig verstanden, dass c={4,2,2} ist, da die null viermal, drei zweimal und neun zweimal in a vorkommt?

1