Informatik

0.0(0)
studied byStudied by 0 people
0.0(0)
full-widthCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/60

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

61 Terms

1
New cards

Welche Laufzeit hat Selectionsort/ Minsort, ist der Algorithmus in Place oder stabil?

In allen Cases O(nÂČ) , in place, nicht stabil.

2
New cards

Welche Laufzeit hat Insertionsort, ist der Algorithmus in Place oder stabil?

Die Laufzeit von Insertionsort betrĂ€gt im besten Fall O(n), im durchschnittlichen und schlechtesten Fall O(nÂČ). Der Algorithmus ist in-place und stabil.

3
New cards

Welche Laufzeit hat Quicksort, ist der Algorithmus in Place oder stabil?

Die Laufzeit von Quicksort betrĂ€gt im besten Fall O(n log n), im durchschnittlichen Fall O(n log n) und im schlechtesten Fall O(nÂČ). Durch randomieiserung des Pivot-Elements im Worst-Case : (n* logn). Der Algorithmus ist in-place (wenn Trick angewendet), aber nicht stabil.

4
New cards

Mergesort

Die Laufzeit von Mergesort betrÀgt im besten, durchschnittlichen und schlechtesten Fall O(n log n). Der Algorithmus ist nicht in-place, aber stabil.

5
New cards

Heapsort

Die Laufzeit von Heapsort betrÀgt im besten, durchschnittlichen und schlechtesten Fall O(n log n). Der Algorithmus ist in-place, aber nicht stabil.

6
New cards

Definition stabiler Sortieralgorithmen. Wie können nicht stabile Algorithmen stabil gemacht werden?

Ein stabiler Sortieralgorithmus bewahrt die relative Reihenfolge von gleichen Elementen im sortierten Ergebnis. Das bedeutet, dass bei gleichwertigen EintrĂ€gen deren ursprĂŒngliche Reihenfolge erhalten bleibt. Nicht stabile Algorithmen können stabil gemacht werden, indem man zusĂ€tzliche Information zu den Elementen hinzufĂŒgt, z. B. durch EinfĂŒgen eines Indexwertes, oder durch die Verwendung von stabilen Sortieralgorithmen wie Mergesort als Teil des Verfahrens → SchlĂŒssel

7
New cards

Definition in-place Sortieren

Ein in-place Sortieralgorithmus sortiert die Daten in der gleichen Speichernutzung, ohne zusĂ€tzlichen Speicherplatz fĂŒr die Sortierung zu benötigen.

8
New cards

Welcher Laufzeit entspricht (n-1) + (n-2) + (n-3) + 
+ 2+ 1

= (n-1)*n/ 2 = nÂČ/2-n/2 → O(nÂČ)

9
New cards

Wie funktioniert Quicksort?

Quicksort ist ein schneller Sortieralgorithmus, der die Auswahl eines Pivot-Elements verwendet, um die Liste in zwei Partitionen zu teilen. Elemente, die kleiner als das Pivot sind, werden links und grĂ¶ĂŸere rechts angeordnet, gefolgt von rekursivem Anwenden des gleichen Verfahrens auf die Teilmengen.

<p>Quicksort ist ein schneller Sortieralgorithmus, der die Auswahl eines Pivot-Elements verwendet, um die Liste in zwei Partitionen zu teilen. Elemente, die kleiner als das Pivot sind, werden links und grĂ¶ĂŸere rechts angeordnet, gefolgt von rekursivem Anwenden des gleichen Verfahrens auf die Teilmengen. </p>
10
New cards

Wie funktioniert Mergesort?

Mergesort ist ein stabiler Sortieralgorithmus, der die Liste in zwei HĂ€lften teilt und dann jede HĂ€lfte rekursiv sortiert, bevor die beiden sortierten HĂ€lften zusammengefĂŒhrt werden. Nachteil: viel Speicherplatz benötigt.

<p>Mergesort ist ein stabiler Sortieralgorithmus, der die Liste in zwei HĂ€lften teilt und dann jede HĂ€lfte rekursiv sortiert, bevor die beiden sortierten HĂ€lften zusammengefĂŒhrt werden. Nachteil: viel Speicherplatz benötigt.</p>
11
New cards

Wie funktioniert Heapsort?

Heapsort erstellt zunĂ€chst einen Min-Heap aus einer Liste mit der Laufzeit O(n), heapify_up/down (O(ldn). Zum sortieren der Liste wird dann je das Minimum aus der Wurzel extrahiert → konstant O(1) mit heapify_down (O(ldn).

<p>Heapsort erstellt zunĂ€chst einen Min-Heap aus einer Liste mit der Laufzeit O(n), heapify_up/down (O(ldn). Zum sortieren der Liste wird dann je das Minimum aus der Wurzel extrahiert → konstant O(1) mit heapify_down (O(ldn).</p>
12
New cards

Was sind dynamische Datenstrukturen?

  • dynamisch wachsend und schrumpfend, in Heap abgelegt

  • besitzen Zeiger: Werte, die auf Speicheradresse anderer Werte zeigen.

  • in Python realisiert durch Listen, Klassen und Dictionaries

13
New cards

Wie sieht eine Implementierung von dynamischen Datenstrukturen in Listen aus?

list= [42, [73, [[[[
, None]]]]] → VerknĂŒpft. Jede Liste hat aber die LĂ€nge 2

14
New cards

Wie sieht eine Implementierung von dynamischen Datenstrukturen in Klassen aus?

class Node:

def __init__(self):

self.value= value

self.next= None

def update_next(self, new_next):

self.next= new_next

15
New cards

Wie sieht eine Implementierung von dynamischen Datenstrukturen in Dictionaries aus?

dict= {“value: 42, “next”: {“value: 73, “next:None}}

second [“next”]= dict

16
New cards

Was sind Stacks, welchem Prinzip folgen sie?

Dynamische Datenstruktur, die auch als Kellerstruktur bezeichnet werden. Im Stack kann immer nur auf das neuste Element zugegriffen werden. Werte werden in bestimmter Reihenfolge gespeichert.

LIFO: last in first out

17
New cards

Welche Operationen können auf einen Stack angewendet werden?

  1. s= empty_stack() → erstellt leeren Stack

  2. push(s, value) → fĂŒgt Wert hinzu “oben rauf”

  3. top(s, value) → gibt obersten Wert zurĂŒck

  4. last= pop(s, value) → entfernt obersten Wert, kann zudem gespeichert werden (last)

18
New cards

Was ist eine Queue?

Die Warteschlange ist eine dynamische Datenstruktur. Sie speichert wie ein Stack Werte in der zugefĂŒgten Reihenfolge. Anders als im Stack gilt hier das FIFO Prinzip: First in first out.

19
New cards

Welche Operationen können auf eine Queue angewendet werden?

  1. q= empty_queue→ konstruiert leere Queue

  2. enqueue(s, value) → fĂŒgt Wert hinzu “oben rauf”

  3. top(s, value) → gibt obersten Wert zurĂŒck

  4. first= deque(s, value) → entfernt untersten Wert, kann zudem gespeichert werden (first)

20
New cards

Welche Elemente und Eigenschaften hat ein Baum?

Verzweigung: Knoten

Knoten ohne Kinder: BlÀtter

Verzweigungsgrad: Anzahl möglicher Kinder (BinÀrbaum: 2 oder 0)

Höhe: maximales Vorkommen innerer Knoten auf Pfad von Wurzel zu empty_Wert. (Aus 3 werten bestehender Baum → 2 gefĂŒllte Level: Höhe 2)

BlĂ€tter: 2^h mit h: Höhe. 2^0= 1Blatt → Wutzel auch Blatt, 2^1 = 2 BlĂ€tter, 2ÂČ = 4 BlĂ€tter, 


21
New cards

Wie ist ein Suchbaum aufgebaut? Wie funktioniert das Nachschlagen und EinfĂŒgen von Werten?

FĂŒr jeden Knoten im Baum gilt: Wert im Knoten > alle Werte im linken Teilbaum und < als alle im rechten Teilbaum.

Nachschlagen: Pfad kann Weg angeben, ob nach links oder rechts “abgebogen” werden muss. genauso kann ĂŒberprĂŒft werden, ob der gesuchte Wert kleiner (links) oder grĂ¶ĂŸer (rechts) oder gleich der Wurzel ist. Wird ein empty-Wert erreicht, ist der gesuchte Wert nicht im Suchbaum enthalten. EinfĂŒgen funktioniert gleich. Bei gleichen Werten wird der Wert nicht eingefĂŒgt. Beim erreichen des Empty-Wertes, kann der Wert an dessen Position eingefĂŒgt werden.

<p>FĂŒr jeden Knoten im Baum gilt: Wert im Knoten &gt; alle Werte im linken Teilbaum und &lt; als alle im rechten Teilbaum.</p><p>Nachschlagen: Pfad kann Weg angeben, ob nach links oder rechts “abgebogen” werden muss. genauso kann ĂŒberprĂŒft werden, ob der gesuchte Wert kleiner (links) oder grĂ¶ĂŸer (rechts) oder gleich der Wurzel ist. Wird ein empty-Wert erreicht, ist der gesuchte Wert nicht im Suchbaum enthalten. EinfĂŒgen funktioniert gleich. Bei gleichen Werten wird der Wert nicht eingefĂŒgt. Beim erreichen des Empty-Wertes, kann der Wert an dessen Position eingefĂŒgt werden.</p>
22
New cards

Laufzeiten in einem Suchbaum. (Nachschlagen, Löschen)

Nachschlagen: Best-case, Average-Case O(ldn)/ O(Höhe) mit n der Elemente im Baum. Worst-Case: O(n) bei einseitigen BÀumen.

Löschen: 1. Nachschlagen des Wertes. Dann ersetzten durch Kind, falls dieses nur 0-1 Kinder hat. Ansonsten Suchen des linken höchsten Wertes oder rechten kleinsten Wert und ersetzten durch diesen.→ O(h) mit Worst-Case O(n)

23
New cards

Welche Operationen können durch das Balancieren des Baums (AVL) verbessert werden?

find/ min/max (→ O(h) bis O(n) zu O(logn)),

insert & delete (→ O(h) bis O(n) zu O(logn)),

24
New cards

Wie ist die Balance eines Teilbaums auszurechnen? Wann werden diese provoziert?

balance(tree)= height(tree.right) - height(tree.left)

Provoziert durch hinzufĂŒgen oder Löschen von Werten.

25
New cards

Bei welchen Balancen werden welche Rotationen ausgeĂŒbt. Male die BĂ€ume fĂŒr eine L-, R-, LR-, RL-Rotation auf.

<p></p>
26
New cards

Welche Balance und Höhe hat der Baum nach einer Rotation?

Höhe des neuen Baumes: h-1, Balance 0,1 oder -1

27
New cards

Was ist eine priority queue PrioritÀtswarteschlange?

PrioritÀtswarteschlange: abstrakte Datenstruktur (ADT)

Queue + PrioritÀt (falls gleiche Werte: nacheinander in der Queue).

  • insert(x, p) → fĂŒge ein Element xxx mit PrioritĂ€t ppp ein

  • find-min / find-max → finde das Element mit höchster PrioritĂ€t

  • delete-min / delete-max → entferne das Element mit höchster PrioritĂ€t

28
New cards

Wie kann eine PrioritÀtswarteschlange (ADT) in einer Baumstruktur dargestellt werden?

In Heaps dargestellt. PrioritÀten werden als Knoten gespeichert. MinHeap hat kleinste Prio als Wurzel. Neben den PrioritÀten können dann Values abgespeichert werden.

29
New cards

Wie können bei der Listendarstellung eines Heaps auf die Kinderknoten und die Elternknoten zugegriffen werden mit der Nutzung vom Index des auszugehenden Wertes i?

Elternknoten: (i-1)//2

linker Kindknoten: i*2+1

rechter Kindknoten: i*2+2

minimum Index 0,

30
New cards

Was heißt amortisierte Laufzeit

Durch Speicherverschwendung erkaufte konstante Laufzeit.

amortisierte Kosten= Gesamtkosten der n Operationen/ n

Verdopplung von Speicher nachdem Speicher voll ist, lÀsst n konstante Operationen zu (O(1)), bis eine in O(n) kommt. dadurch so gut wie Konstant.

<p>Durch Speicherverschwendung erkaufte konstante Laufzeit.</p><p>amortisierte Kosten= Gesamtkosten der n Operationen/ n</p><p>Verdopplung von Speicher nachdem Speicher voll ist, lÀsst n konstante Operationen zu (O(1)), bis eine in O(n) kommt. dadurch so gut wie Konstant.</p>
31
New cards

Was sind Arrays? besondere Eigenschaften

Datenstruktur mit fester LĂ€nge, keine heterogene Elemente, jedes Element ĂŒber Index erreichbar.

lesen& schreiben in konstanter Laufzeit., NICHT dynamisch!

32
New cards

Male auf, wie ein Array gespeichert ist.

knowt flashcard image
33
New cards

Was passiert, wenn man einen Wert an einen Array zufĂŒgen will? Und Lösung fĂŒr Problem.

append fĂŒgt ans Ende hinzu, Speicherplatz hinter array ende kann schon belegt sein → neuen grĂ¶ĂŸeren Speicherplatz reservieren und Array-Werte kopieren.

Problem: wenn mehrere Variablen auf Array verweisen, mĂŒssen alle Speicheradressen aktualisiert werden

LÖSUNG: ZusĂ€tzlicher Verweis zwischen Variablen und Listen. feste Adresse zeigt auf Zeiger, der die Speicheradresse des Arrays zeigt. Die feste Adresse nicht Ă€nderbar aber der Zeiger wird aktualisiert, falls die Speicheradresse geĂ€ndert wird. Variable → Zeiger → Speicherblock

34
New cards

sind absolute Laufzeiten oder die Steigung des Wachstums bei steigender Eingabe interessanter?

Steigung

35
New cards

Was sagen die Symbole aus: g(n) = O(f), Ω(f), o(f), ω(f), Θ(f)?

  • O: obere Schranke (≀ mit einem Faktor). g wĂ€chst höchstens so schnell wie f

  • Ω: untere Schranke (≄ mit einem Faktor). g wĂ€chst mindestens so schnell wie f

  • o: echt kleiner. g wĂ€chst stets langsamer als f

  • ω: echt grĂ¶ĂŸer. g wĂ€chst stets schneller als f

  • Θ: gleich groß (oben und unten gleichzeitig beschrĂ€nkt).

36
New cards

Was bedeuten die einzelnen Teile dieser Schreibweise?

O(f)={g: N→R+ ∣ ∃C > 0 ∃n0 ​∈ N ∀n ≄ n0​: g(n) ≀ C⋅f(n)}.

  • N→R+
    bedeutet: g ist eine Funktion von den natĂŒrlichen Zahlen zu den positiven reellen Zahlen.

  • ∃C>0 („Es existiert ein C>0“): ein fester Faktor.

  • ∃n0 ​∈ N („Es existiert ein n0 in den natĂŒrlichen Zahlen“): ab einer bestimmten Startschwelle.

    ∃: Existenzquantor: ‘es gibt’

  • ∀n ≄ n0​ („FĂŒr alle n≄n0 ​ gilt ...“): Bedingung gilt ab dieser Schwelle fĂŒr alle grĂ¶ĂŸeren n.

    ∀: Allquantor: ‘fĂŒr alle’

  • ​g(n) ≀ C⋅f(n) das ist die eigentliche Ungleichung: g wĂ€chst höchstens so schnell wie f, bis auf den konstanten Faktor C.

37
New cards

Mit welchem C und n0 kann g ∈ O(f) sein:

bringe die Laufzeiten in aufsteigende Reihenfolge:

O(1) < O(logn) < O(n) < O(n logn) < O(nÂČ) < O(nÂł) < O(2^n) < O(3^n) < O(n)! < O(n^n)

O(1) < O(logn) < O(n) < O(n logn) < O(nÂČ) < O(nÂł) < O(2^n) < O(3^n) < O(n!) < O(n^n)

38
New cards

Wie wird eine Laufzeit bewiesen?

Durch den Satz von l’ Hîspital:

lim f’(n)/ g’(n) = lim f(n)/g(n) darf angewendet werden, wenn 0/0 oder ∞/∞ vorliegt.

39
New cards

Zeige, dass g ∈ o(f) gilt.

g(n) = ld(n)ÂČ, f(n) = n*ld(n)

g(n)/f(n) = ld(n)ÂČ/ n*ld(n) = ld(n)/n = ln(n)/ln(2)*n

Ableitung beider therme einzeln: 1/ln(2)*n

mit n → ∞: lim= 0 Damit ist die Aussage bewiesen

40
New cards

Male die verschiedenen Landau-Notationen auf in einem Diagramm, aus dem die AbhÀngigkeit hervorgeht

knowt flashcard image
41
New cards

Zu welchem Symbol gehören die beiden Schreibweisen:

{g: N→R+ ∣ ∃C > 0 ∃n0 ​∈ N ∀n ≄ n0​: g(n) ≄ C⋅f(n)}

{g: N→R+ ∣ ∀C > 0 ∃n0 ​∈ N ∀n ≄ n0​: g(n) ≄ C⋅f(n)}

  1. Ω

  2. ω

42
New cards

Was entspricht 1. lim​n→∞ g(n)/n(n)​ <∞

  1. lim​n→∞ g(n)/f(n)​=0

  2. lim​n→∞ g(n)/f(n)​=k

  1. g∈O(f), f∈Ω(g)

  2. g∈o(f), f∈ω(g)

  3. g∈Θ(f), f∈Θ(g)

43
New cards

Wie ist die ProportionalitĂ€t der Kanten zu den Knoten in einem gerichtetem Graph (Einbahnstraßen) ausgegangen wird.

E ⊂ V1 x V2 mit V1: Ausgangsknoten, V2: Zielknoten, Kantenmenge ⊂ ist Teilmenge der Knotenpaar-Menge. Alle Kanten verbinden nur Knoten aus V miteinander. Jedes Element von VxV ist ein Paar von Knoten.

bei ungerichteten Graphen: Reihenfolge wichtig.

→ aus VxV= {(u,v) | u ∈ V, v ∈ V} wird {{n,m} | n,m ∈ V}

44
New cards

Male die Adjazenzmatrix von [FL, KI, NMS, HL, HH], Fl: 60 NMS, 70 KI; 1KI: 30 NMS, 80HL; NMS: 50HL, 60HH; HL: 70HH

0 1 2 3 4

0 0 70 60 ∞ ∞

1 70 0 30 80 ∞

2 60 30 0 50 60

3 ∞ 80 50 0 70

4 ∞ ∞ 60 70 0

45
New cards

Was sind Unterschiede in der Tiefen und der Breitensuche? → Datenstruktur, Besuchte Knoten, PfadlĂ€nge, Speicherbedarf, Anwendung

Eigenschaft

DFS

BFS

Datenstruktur

Stack / Rekursion

Queue

Besucht Knoten

„tief“ in einen Zweig

„flach“ schichtweise

PfadlÀnge

Nicht garantiert kĂŒrzester Pfad

Garantiert kĂŒrzester Pfad in ungewichteten Graphen

Speicherbedarf

O(V) Rekursionstiefe (bei Baum)

O(V) max. Breite der Ebene

Anwendung

Topologische Sortierung, ZyklenprĂŒfung, Pfadsuche

KĂŒrzeste Wege, Level-Bestimmung, Netzwerkflussvorbereitung

46
New cards

Backtracking. Ausgelassen fĂŒr jetzt

47
New cards

Was ist dynamisches Programmieren?

Dynamisches Programmieren ist eine Optimierungstechnik, um Probleme zu lösen, die ĂŒberlappende Teilprobleme haben und eine optimale Teilstruktur besitzen.

  • Überlappende Teilprobleme: Das Problem kann in Teilprobleme zerlegt werden, die mehrfach auftreten.

  • Optimale Teilstruktur: Die optimale Lösung des Gesamtproblems kann aus den optimalen Lösungen der Teilprobleme aufgebaut werden.

DP vermeidet Rekursionen mit doppelter Arbeit, indem Teillösungen gespeichert werden.

48
New cards

Welche Operationen können bei der Editierdistanz von zwei Wörtern genutzt werden?

Delete (i)

Insert (i, a)

Replace (i,a)

49
New cards

as ist die Editiersequenz? Wie kann diese aussehen?

Die Abfolge von Operationen, die aus einem Wort das andere macht. DEL(1); REP(2,S)

50
New cards

Was ist die Editierdistanz?

Die Anzahl an Operationen, die mindestens ausgefĂŒhrt werden mĂŒssen.

51
New cards

Warum normalisiert man die Operatoren? Bei welchen 4 Editier-Operationen ist die Reihenfolge entscheidend? ( j < i )

Normalisierung, um die Operatoren seriell ĂŒber beide Wörter nutzen zu können.

DEL(i); DEL(j) wird zu DEL(j); DEL(i) REP(i,a);

DEL(j) wird zu DEL(j); REP(i − 1,a)

DEL(i); INS(j,a) wird zu INS(j,a); DEL(i + 1)

INS(i,a); INS(j,a) wird zu INS(j,a); INS(i + 1,a)

52
New cards

Wie ist die Laufzeit der Ermittlung der (kleinsten) Editierdistanz naiv also ohne Memorization

Laufzeitanalyse naiv

  • Jeder Aufruf mit (m,n)) erzeugt bis zu 3 rekursive Aufrufe (Insert, Delete, Replace).

  • Rekursionstiefe ist höchstens m+n.

  • Anzahl Knoten im Rekursionsbaum: im Worst Case O(3m+n).

Tnaiv(m,n) = O(3m+n) Exponentiell, weil dieselben Teilprobleme immer wieder berechnet werden.

53
New cards

Wie kann die Editierdistanz effektiver ermittelt werden? Mit welcher anderen Funktion/Berechnung wird diese Methode verglichen?

Wie bei Fibonacci wird bei der naiven Variante Teilprobleme immer wieder aufgerufen → exponentiell.

D(i, j) hĂ€ngt ab von D(i−1, j), D(i, j−1), D(i−1, j−1). Die selben Teilprobleme tauchen auch hier öfter auf → Memoization/DP, damit jedes Teilproblem nur 1x berechnet wird.

Im Gegensatz zu Fibonacci (O(n)) ist die Laufzeit hier =(m*n). Also abhÀngig von beiden WortlÀngen.

Bsp.

D(2,2) ( "ab" vs "cd" )

├─ D(1,2) ( "a" vs "cd" )

│ ├─ D(0,2) (" " vs "cd")

│ └─ D(1,1) ("a" vs "c")

│ ├─ D(0,1)

│ ├─ D(1,0)

│ └─ D(0,0)

├─ D(2,1) ( "ab" vs "c" )

│ ├─ D(1,1) (kommt nochmal!)

│ └─ D(2,0)

└─ D(1,1) ( "a" vs "c" ) (kommt nochmal!)

54
New cards

Was ist das Grundkonzept und Ziel vom Hashing?

Umwandeln von Daten beliebiger GrĂ¶ĂŸe in einen kurzen Index → Hashwert oder SchlĂŒssel

Zeiel: Schnelles Suchen, EinfĂŒgen, Löschen und PrĂŒfen, ob Element existiert O(1)

55
New cards

Mit welchen Datenstrukturen kann Hashing in Python umgesetzt werden.

Liste von Paaren, SuchbÀume, Dictionaries

56
New cards

Welche Probleme können bei der Erstellung des Hashwertes auftauchen?

Die Hashfunktion kann so programmiert sein, dass bspw. Strings mit gleichen Buchstaben den gleichen Wert zugewiesen bekommen. Entweder können die Werte dann ĂŒberschrieben werden oder es wird eine Liste angelegt mit beiden Strings. Sind zu viele Eingaben in der Liste, ist Array nur noch um konstanten Faktor effizienter. (Dominanz der inneren Listenstrukturen)

→ dynamischer Array, der bei best. FĂŒllgrad vergrĂ¶ĂŸert wird. Mit amortisierter Laufzeit.

→ großer SchlĂŒsselbereich/ KeySet {0,1,
., n-1}

57
New cards

Was ist ein Bit (b), Byte (B)?

Bit: kleinste Informationseinheit: 0 oder 1

Byte: 8 Bit: ein Zeichen hat 1 Byte. Nutzung bspw. bei ASCII-Zeichen.

58
New cards

Nenne ein Beispiel fĂŒr verlusthafte und verlustfreie Datenkompression

verlusthaft: jpeg, mp4

verlustfrei: zip

59
New cards

Was beschreibt der Begriff Entropie?

Informationsdichte

60
New cards

Bei geringer Informationsdichte, viele Werte unnötig → kompakte Darstellunf mögl.

Wie viele Zeichen benötigt man, um “eine leise eselei” darzustellen, wie viele Bits ?

8×17 Zeichen → 144 Bit

6 Zeichen: (e, i, n, _, l, s) → 8 Bit code: 8×17 = 144 Bit

aber 6 Zeichen auch als 3 Bit code darstellbar → 3×17= 51 Bit

61
New cards

Wie sĂ€he der Huffman-Algorithmus fĂŒr “eine leise eselei” aus?

knowt flashcard image

Explore top flashcards

GEOG
Updated 76d ago
flashcards Flashcards (23)
Immuno Final
Updated 961d ago
flashcards Flashcards (142)
pe 2nd
Updated 418d ago
flashcards Flashcards (31)
AP japanese kanji
Updated 955d ago
flashcards Flashcards (410)
GEOG
Updated 76d ago
flashcards Flashcards (23)
Immuno Final
Updated 961d ago
flashcards Flashcards (142)
pe 2nd
Updated 418d ago
flashcards Flashcards (31)
AP japanese kanji
Updated 955d ago
flashcards Flashcards (410)