MINT lernen

Selbsttest — Wo stehe ich?

40 Fragen in fünf Themen — von Index und Länge über Suchen und Sortieren bis zu O-Notation, Speicher und Urteil, mit Auswertung pro Thema.

Dein Fortschritt:
0 / 0 Aufgaben
Thema 1

Reihungen anlegen und durchlaufen

8 Fragen
1.1  Wie viele Elemente hat new char[20], und welches ist der letzte Index?
1.2  Welchen Wert hat jedes Element direkt nach double[] d = new double[4]; ?
1.3  Welche Bedingung durchläuft alle Indizes von a?
1.4  Womit wird eine Variable max für das Maximum am besten vorbelegt?
1.5  int[] z = {4, 9, 2}; — welchen Wert hat z[z.length - 1]?
1.6  int[][] m = new int[4][6]; — was liefert m[0].length?
1.7  Wie viele Durchläufe hat die innere Schleife insgesamt, wenn eine 5×8-Tabelle zeilenweise durchlaufen wird?
1.8  int s = 0; for (int x : a) s += x; — was berechnet das für a = {3, 5, 4}?
Thema 2

Suchen

8 Fragen
2.1  Was liefert die lineare Suche, wenn x zweimal vorkommt?
2.2  Wie viele Vergleiche braucht die lineare Suche bei n = 50, wenn x fehlt?
2.3  Welche Voraussetzung hat die binäre Suche?
2.4  links = 6, rechts = 9 — welche Mitte wird untersucht?
2.5  Wann endet die binäre Suche ohne Treffer?
2.6  Wie viele Vergleiche braucht die binäre Suche höchstens bei n = 500?
2.7  Was passiert bei links = mitte statt links = mitte + 1?
2.8  Warum wird bei der binären Suche in der Mitte geteilt?
Thema 3

Sortierverfahren

8 Fragen
3.1  Was macht Selectionsort in einem Durchlauf?
3.2  Wie viele Vergleiche braucht Selectionsort bei n = 10?
3.3  Welches Verfahren profitiert am meisten von fast sortierten Daten?
3.4  Welches Verfahren ist nicht stabil?
3.5  Was ist der ungünstigste Fall für Insertionsort?
3.6  Wozu dient die Abbruchbedingung bei Bubblesort?
3.7  Wie viel Zusatzspeicher brauchen die drei einfachen Sortierverfahren?
3.8  Wie viele falsch stehende Paare hat {3, 1, 2}?
Thema 4

Operationen zählen und O-Notation

8 Fragen
4.1  Warum zählt man Operationen statt die Zeit zu stoppen?
4.2  Wie oft wird die Bedingung von for (int i = 0; i < n; i++) geprüft?
4.3  Wie oft läuft der Rumpf von for (i < n) for (j < n)?
4.4  Wie oft läuft for (int k = 1; k < 64; k = k * 2)?
4.5  In welcher Klasse liegt T(n) = 4n² + 100n + 7?
4.6  Was bedeutet T(n) ∈ O(f(n))?
4.7  Ein O(n²)-Programm braucht für 1000 Werte 3 s. Etwa wie lange für 3000 Werte?
4.8  Welche Klasse wächst am langsamsten?
Thema 5

Speicher und Effizienz

8 Fragen
5.1  Wie viel Speicher belegen die Elemente von new int[1_000_000]?
5.2  Was speichert eine String[]-Reihung in ihren Plätzen?
5.3  Welchen Zusatzspeicher braucht eine sortierte Kopie?
5.4  Wovon hängt die Größe einer Markierungsreihung ab?
5.5  Wann lohnt es sich etwa, erst einfach zu sortieren und dann binär zu suchen?
5.6  Was gehört nicht in ein Effizienzurteil?
5.7  Warum kann bei n = 10 ein O(n²)-Verfahren schneller sein als ein O(n log n)-Verfahren?
5.8  Welche Variante findet Doppelte unter 10⁶ Werten zwischen 0 und 10⁶ am schnellsten?
Beantworte alle Fragen, um den Button freizuschalten.

Deine Auswertung

≥ 80 % — sitzt sicher 50 – 79 % — noch wackelig < 50 % — nacharbeiten