Einführung Flashcards

1
Q

Welche Merkmale sind für die Analyse eines Algorithmuses wichtig?

A
  1. Leistung
  2. Korrektheit
  3. Modularität
  4. Wartbarkeit
  5. Funktionalität
  6. Robustheit
  7. Benutzerfreundlichkeit
  8. Erweiterbarkeit
  9. Zuverlässigkeit
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Was sind die grundlegenden Merkmale für den Entwurf/Benutzung eines Frameworks für die Beschreibung und Analyse von Algorithmen?

A
  1. Darstellung in Pseudocode
  2. Benutzung der asymptotischen Notation zur Laufzeit-Analyse
  3. Technik zur Lösung eines Problems
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Nenne mir zwei grundlegende Sortieralgorithmen.

A
  1. Insertionsort
  2. Mergesort
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Was bedeutet Permutation im Sachzusammenhang eines Sortieralgorithmuses?

A

Man bezeichnet bei Sortieralgorithmen den Output als Permutation, da hier immer nach einer Bestimmten Reihenfolge gesucht wird.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Was ist mit “Schlüssel” gemeint?

A

Man bezeichnet den Index bzw. Zugriffswert eines Arrays bzw. einer Datenbank als Schlüssel.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Beschreibe mir den Insertionsort in Pseudocode.

A

Input: Array A mit der Länge n
Output: Sortiertes Array A

INSERTION-SORT(A, n)
for j = 2 to n do
|—key = A[j]
|—i = j - 1
|—while i > 0 & A[i] > key do
|—|—A[i + 1] = A[i]
|—|—i = i -1
|—end while
|—A[i + 1] = key
end for

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Beschreibe mir den Insertionsort.

A

Es wird nach dem Vorbild von Spielkarten in der Hand sortiert.
Alle Karten liegen auf dem Tisch.
Nimm eine Karte auf die Hand.
Nimm solange weitere Karten auf und vergleiche sie mit dem Karten auf der Hand um die Korrekte position zu finden bis keine Karten mehr vorhanden sind.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Was ist eine Schleifeninvariante?

A

Eine Schleifeninvariante ist der Konstante Teil einer Schleife die vor und nach der Ausführung einer Schleife gültig sein muss (Teil der Bedingung).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Beschreibe den Vorgang eines Korrektheitsbeweises einer Schleife.

A

Vorgehen ist vergleichbar mir der vollständigen Induktion der Mathematik.
1. Basisfall/Indutkionsschritt gilt
2. Invariatne vor der ersten Iteration gilt
3. Invariante gilt von Iteration zu Iteration

Es wird kein lim gebildet, Reihenfolge der Schritte ist offen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Beschreibe das RAM-Modell (Random-Access-Maschine)

A
  1. Sequenzielles durchlaufen
  2. keine Parallelität
  3. Identifizierung aller Aritmetischen vorgängen
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Nenne mir die drei Fälle die bei einer Analyse betrachtet werden.

A
  1. Worst-Case
  2. Middle-Case
  3. Best-Case
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Was ist mit Relativer und Absoluter Geschwindigkeit gemeint?

A

Relative Geschwindigkeit bezieht sich auf Algorithmen, die auf gleichen Maschinen laufen, Absolute Geschwindigkeit biezieht sich auf verschiedenen Maschinen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Definiere die Klasse von Funktionen Θ (Theta).

A

Θ(g(n)) = f(n): Es existieren positive Konstanten c_1, c_2, und n_0 sodass, 0 ≤ c_1g(n) ≤ f(n) ≤ c_2g(n) für alle n ≥ n_0.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Beschreibe den Mergesort in Pseudocode.

A

MergeSort(A, p, r)
if p < r then
|— q = ⌊(p + r )/2⌋
|— MergeSort(A, p, q)
|— MergeSort(A, q + 1, r)
|— Merge(A, p, q, r)
end if

Initial call: MergeSort(A, 1, n)

⌊a⌋ = floor(a)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Welcher Sortieralgorithmus ist effizienter, Insertionsort oder Mergesort?

A

Interstionsort = Θ(n2)
Mergesort Θ(n lg(n))

Der Mergesort ist effizienter.

lg = log_2

How well did you know this?
1
Not at all
2
3
4
5
Perfectly