Huffmancode: Informatik (deutsch)
Вставка
- Опубліковано 29 вер 2024
- Hat dir das Video geholfen? Über einen Flattr-Klick würde ich mich sehr freuen: flattr.com/t/1...
Erklärung und Beispiel zu Huffmancode
www.bleeptrack....
Lösungen:
taucher: 11001010100000011110100001
0001101010111101010: rente
Interessant und sehr verständlich erklärt!
Der Ton ist hier ziemlich leise :D aber sonst gut erklärt!
@Ousmane Barry Es ist an sich egal ob links oder rechts 1 bzw 0 kodiert wird, so lange man sich an die Vorschrift hält. h und t haben die gleiche Wahrscheinlichkeit und könnten auch vertauscht angeordnet werden.
taucher: 11001010100000011110100001
Decodierung: rente
Habe es verglichen und richtig. Top erklärt!
no idea what she is saying but i guess i got the huffman code through this video.
thank you for the very good explanation ... but i have a question : when we generate the tree there are multiple ways where to add each node (although it all gives the same root node that is 7 here i think ) so does that mean that when you code there are more than one possible solution ? my tree is with BFS : 7,3,4,2,r,2,2,t,a,u,c,h,e .....my answer : 11111001101000100010
Ich habe wieder mal eine Prüfung danke für die Erklärung :3
Danke für die rettung
Ich hab den scheiss endlich verstanden danke danke danke ❤️❤️
Sehr gutes und verständliches Video. Danke! :)
DANKE!!! :DD Toll erklärt! Danke!!
Super Tutorial :)
Viel besser erklärt als unser Lehrer xD
OK. Das ist ja komplett anders als wie es uns erklärt wurde. Definitv verständlicher! :D
super erklärt!
der Algorithmus reibungslos, aber Sie umgekehrt die Bits in Fehler in der Struktur.
Beispiel: binäre Kodierung sollte 000 h und 001 t
es ist lost
Deine Videos sind einfach nur super! Angenehmes Tempo, gute Qualität der Darstellungen, vieleviele Themen sind abgedeckt... Danke dir tausend Mal!
Hi, ich habe mir einen neuen Baum aufgestellt für "taucher" und bin dann einfach nach der Reihe gegangen bei den Buchstaben, also erst "t", dann "a" ... usw. bis "e" gehen ja Paarweise mit 1+1, dann bleibt das "r" übrig und das habe ich mit dem 2er von "h" und "e" kombiniert.
Also, damit du weißt, welchen Baum ich aufgestellt habe!
Mein Ergebnis ist dann 111 110 101 100 011 010 00
Kannst du mir vielleicht erklären, wie du auf dein Ergebnis gekommen bist? Deines ist ja viel länger!
Andreas Kötter Du hast ja auch nur ein Wort Codiert,sie einen ganzen Satz
@@paulb5356 Es geht doch um das Wort "Taucher" und ich habe das selbe Ergebnis wie der Kommentator
@@bunchofnumbers935 @Andreas Kötter Es geht hierbei jeweils um das Ausgangsalphabet bzw. um die Menge der Buchstaben. Wenn ihr nur die Buchstaben für 'taucher' in eurem Ausgangsalphabet habt, dann ist euer Baum natürlich viel kürzer und es kann auch eine kürzere Codierung entstehen, weil andere Buchstaben gar nicht möglich sind. Im Beispiel des Videos sind allerdings mehr Buchstaben möglich, daher der komplexere Baum und daher auch die andere Codierung. Der Baum und damit die Codierung sind immer von der Menge der zu codierenden Buchstaben abhängig.
Bleeptrack Super gut eklärt... Nur eine frage stellt sich... als lösung hast du 11001010100000011110100001 für taucher angegeben. meine lösung: 111 110 101 100 011 010 00... Ist deine lösung die einzig richtige? oder kann es sein, dass mein baum nur anderst aufgebaut ist und ich zur dieser lösung komme?... Danke im voraus
Genau: mit einem anderen Baum entstehen auch anderen Codewörter. Nach meiner Erklärung können auch durchaus andere Bäume entstehen, wenn man z.b. zwei Buchstaben mit der gleichen Häufigkeit anders anordnet. Meine Lösung bezieht sich übrigens auf den Baum, der im Video aufgebaut wird. Du hast dir wahrscheinlich einfach einen neuen erstellt ;)
Gutes Video, nur eine Aussage ist Falsch: Die Nullen und Einsen müssen nicht konsistent Rechts oder Links vergeben werden. Ist komplett egal, da zum dekodieren eh wieder der gleiche Baum verwendet werden muss. Zudem hast du ja auch nicht beim Platzieren der Blätter auf eine Reihenfolge geachtet.
+michidk Jo, stimmt :) So weit hat mein Zweitsemestler-Ich damals nicht gedacht. Wäre eigentlich besser gewesen das garnicht über rechts und links zu erklären.
Danke für die Hilfe, hab eine Informatik Stunde in der Schule verpasst durch Erkrankung und habe kein gutes Tutorial gefunden. Dank dir habe ich es doch letztendlich verstanden, danke dir ;)
super hilfreiche videos, bereite mich gerade für die erste infoklausur an der uni vor und muss sagen, dass deine videos mir bisher eigentlich immer weiter geholfen haben wenn das skript zu unverständlich war!
Super erklärt! :D Wie einfach sowas immer auf einmal ist, wenn man es mal versteht xD
Uiuiui, danke für das große Lob :D
Gerne! Ich hoffe, du hast viel Spaß am Studium :)
Wo ist dann der Unterschied zwischen Huffman Verfahren und Shanon Verfahren weil beim Shanon tut man doch auch die kleinsten Paare zusammen machen oder
Etwas seeeeehr langsam erklärt, dadurch recht anstrengend zu verfolgen. Ansonsten gut und verständlich erklärt, nur ein etwas angenehmeres Tempo wäre schön gewesen...
Danke für das Video. Schreibe morgen eine Klausur über etliche Themengebiete der Informatik und das hier verursachte mir Kopfschmerzen :D Habs nun verstanden :) *Küsschen
Danke für das Video. Hab zuvor ein Skript und 2 Seiten im Netz konsultiert. Dank dir hab ich Huffmann jetzt gecheckt!
@Andreas Kötter: die Aufgaben waren so gedacht, dass einfach der schon vorhandene Codebaum weiter verwendet wird. ;)
Die Lösung ist "rente" oder?
Unglaublich gut erklärt, vielen Dank dir :-) Mach weiter so (Y)
Arsch gerettet Morgen xd
Ich danke dir für das tolle Video
Gibt es eine einziege Baumkonstruktion bzw Resultat Möglichkeit?? Ich meine wenn ich mein Baum anders anfange haben wir verschiedene Ergebnisse...
Klasse dein Video! Danke!!!1
Delly Christian Fofie Genau richtig: Die Bäume können unterschiedlich aussehen. Der Code, der entsteht ist aber trotzdem immer optimal :)
c'est un pb d' ordonnancement je n 'est regard pas
la video !!!
Hilft auch 8 Jahre später :))
Wie weiß man wo man das nächste Pärchen hintut (links oder rechts)?
Wichtig ist nur immer die kleinste Wahrscheinlichkeit zusammenzufassen. Was links oder rechts landet ist egal: der Weg zum Knoten ist ja gleich lang :)
DANKE ! ^^ Einfach mal danke :D
Kann mir jemand erklären wie ich entscheide, ob i jetzt links oder rechts von l steht? Denn das macht schon etwas aus, ob ich jz für den Code 0111 habe oder 0110
Das macht aber für die Codelänge keinen Unterschied und darauf kommt's ja an 👍
@@bleeptrack Ok, danke!
Der Ton ist sehr leise, aber inhaltlich ist das Video sehr gut erklärt! Super!
super .............
du sagst für linken 1 und rechsten 0 aber das is genau umgekehrt oder ?
Kannst du auf beide Weisen machen, du musst dich nur auf eine festlegen :) (oder für die Klausur ans Skript halten ;) )
Super Video! Wie berechnet man denn die Bitgrösse eines Huffmanbaumes?
danke für diese Info
Sehr gut erklärt. danke :)
Daaaanke
Also gibts es nicht nur einen Baum pro Textcode ?
Zum Beispiel wenn ich"milch macht munter" kodiere und einen anderen Baum aufstelle und deshalb auch andere codes für die Buchstaben rausbekomme, dann ist es trotzdem richtig .
Ich frag weil ich das codieren für eine Klausur drauf haben muss
hi, ja es können unterschiedliche Bäume entstehen. Schau aber sicherheitshalber in deinem Skript nach, ob es z.b. für gleiche Wahrscheinlichkeiten Regeln gibt ;)
Schönes Video, weiter so!
gut erklärt! kannst du das auch programmieren in c?
Das ginge am Ziel der Videos vorbei ;) aber du findest zig Implementationen im Netz, wenn du mal in den passenden Code spicken möchtest.
@@bleeptrack wirklich danke für deine ausführliche Antwort!!! Mach weiter so!! Finde ich klasse!
ein supergutes video!! :D du erklärst es so verständlich dass man das auf anhieb versteht:) immer weiter so :D
man kann also verschiedene Bäume respektive huffman codes aus den selben Wörter generieren oder?
Genau. Damit der Baum eindeutig wird, muss man noch ein paar Sachen festlegen (0 links oder rechts? Vorschrift bei vielen gleichen Wahrscheinlichkeiten? ...)
Die beste Erklärung überhaupt
danke für die tolle erklärung!!!
Warum ist es wichtig, dass die Anzahl der Buchstaben bekannt ist?
Man könnte die buchstaben doch einfach nebeneinander schreiben und diese dann zu einem baumdiagramm verbinden, danach die einsen und nullen schreiben. Wozu braucht man dann die zahlen?
Hi, es ist sinnvoll die Wahrscheinlichkeiten eines Buchstaben (Symbols) zu kennen. Wenn er häufiger vorkommt, dann ist sein Codewort im Baum kürzer. Man will ja schließlich einen Codetext haben, der so kurz wie möglich ist :)
Bleeptrack Coole Sache :D
Danke
Dankeschön! Das freut mich :)
Top!
4 stunden theoretische-informatik-vorlesung in 12 minuten aufs wesentliche beschränkt und 1000x besser erklärt :D :D besten dank :)
hast du dein studium geschafft?
Der letzte Kommentar: "der Baum muss auch weitergegeben werden"
Ist dem wirklich so? Reichet es nicht aus wenn ich und mein Freund denselben Algorithmus haben? Folgt dann der Baum nicht eindeutig aus diesem?
Vielen Dank fürs Video! Was ich noch angefügt hätte, wäre zu zeigen wie lang die Zeichenkette ist.
m=3*3bit=9bit
i=1*4bit=4bit
l=1*4bit=4bit
c=2*4bit=8bit
h=2*3bit=6bit
a=1*4bit=4bit
t=2*3bit=6bit
n=1*4bit=4bit
e=1*4bit=4bit
r=1*4bit=4bit
_=2*3bit=6bit
"milch macht munter" entspricht kodiert 59 Bit.
Soweit ich weiß musst du tatsächlich den Baum mitgeben oder es müssten zumindest die Wahrscheinlichkeiten bekannt sein. Wenn Alice und Bob wissen, dass sie deutschen Text versenden, dann könnten sie sich natürlich auf die Wahrscheinlichkeiten des deutschen Alphabets einigen. Das entspricht aber auch implizit der Weitergabe des Baumes.
Das macht Sinn! Vielen Dank für die schnelle Antwort!
Noch eine Frage:
Bei Dir wird ja z.B. der Buchstabe "m" zu "001" kodiert.
Als ich das Beispiel für mich durchgespielt habe, habe ich die "6" und "4" gerade andersrum verbunden als Du.
Somit ist "m" bei mir "011". Ist das ein Fehler beim Ausführen des Algorithmus?
-> Oder eben gerade ein Grund warum der Baum mitgegeben werden sollte? :D
Gut erkannt :) Das ist kein Fehler beim ausführen, man kann sich das tatsächlich aussuchen. Wenn man den Algorithmus in Code gießt, dann legt man natürlich eine Reihenfolge fest. Am Beispiel von vorhin: Wenn sich Alice und Bob auf die deutschen Buchstabenwahrscheinlichkeiten (
Haha, vielen Dank, jetzt ist alles klar, du bist cool!
Schönen Tag noch :)
Mega geil erklärt! Danke
sehr hilfreich, danke
Danke! Sehr gut erklärt :-)
danke dafür! :)
cool mann! Thx!
DANKE!
Welches Zeichenprogramm benutzt du?
Damals noch Sketchbook Pro, mittlerweile Krita
@@bleeptrack Danke
Danke!
Könntest du noch mehr Videos machen wo du genau in die Details der Themen gehst?
Ich verstehe die Sachen hier immer sehr gut bei dir :)
geht man bei der Decodierung immer davon aus das 4 Stellen verwendet werden? Also 4er Blöcke. Oder woran erkennw ich bei der Decodierung wie viel stellen ich für den ersten Buchstaben nehmen muss?
Hi. Nein, diese festgelegte Blocklänge möchte man ja gerade vermeiden. Beim Dekodieren gehst du einfach den Baum entlang. Du startest bei der Wurzel und landest zum Schluss bei einem Blattknoten mit einem Buchstaben.
Bleeptrack hab grad nen Artikel gelesen... :D alles klar hab zu komplex gedacht. Danke für die schnelle Antwort :)
Ich glaub du meintest konsequent und nicht konsistent :D
www.duden.de/rechtschreibung/konsistent, ist kein Fehler
meinte er nicht konstant?
Danke, schönes Video!