Datenstrukturen im Überblick 1 Informatik - simpleclub https://www.youtube.com/watch?v=t43yaHT7aGw Transkript (automatisch erstellt) 0:10 Habt ihr euch mal gefragt wie die NSA die ganzen Daten organisiert und strukturiert? Nein?! 0:15 Jap wir uns auch nicht :D Vielleicht ist es einfach ein riesiger Haufen Müll! 0:19 Aber es gibt Möglichkeiten Daten zu speichern und zu strukturieren. Und genau das schauen wir uns heude mal an. 0:25 Jo gut! Dann hauen wir mal rein! 0:30 Datenstrukturen sind in der Informatik im Prinzip Objekte. Diese Objekte werden gebraucht, um Daten im Speicher zu verwalten. 0:37 Die Daten werden dabei miteinander verknüpft, deswegen spricht man auch von einer Struktur. Die Art der zu speichernden Informationen ist dabei erstmal völlig schnurz piep egal. 0:47 Es kann sich dabei um Namen, Zahlen oder die orthopädischen Schuhe eurer Oma handeln. :D 0:52 Wichtig ist nur: Eine Datenstruktur sorgt dafür, das diese Information korrekt im Speicher angelegt und durch Algorithmen organisiert werden. 1:00 So hippe Datenstrukturen müssen bestimmte Funktionen zu Verfügung stellen. Darunter fallen Hinzufügen, 1:05 Suchen und Löschen von Daten. 1:08 Es gibt zwei Arten von Datenstrukturen: Einmal die Statischen und einmal die Dynamischen. 1:14 Grundsätzlich haben statische Datenstrukturen ein festes Speicherschema. Dat ändert sich auch nicht, während die Datenstruktur angewendet wird. 1:22 das heißt es bleibt während der gesamten Laufzeit unverändert. Vereinfacht gesagt: 1:28 Ist einmal die Größe festgelegt, gibts daran nix mehr zu rütteln. Will man aufeinmal mehr Daten ablegen, als ursprünglich geplant, muss man eine neue 1:35 Struktur erstellen. Die einfachsten statischen Datenstrukturen sind die normalen Datentypen. 1:40 Also die Dinger, die ihr eh schon in und Auswendig kennt, wie Integer, Boolean, 1:45 Double usw. Die gehören zu den Strukturen, eben weil sie Information speichern. 1:50 Auch wenn wir wenig Einfluss auf die Größe von denen haben. Die bekannteste statische Datenstruktur ist das Array. 1:57 Ein Array speichert eine Reihe von Informationen selben Typs. Der Vorteil beim Array ist, das man direkt auf die einzelnen Felder zugreifen kann. 2:05 Der Nachteil ist aber, man muss schon vorher die Größe kennen. Sprich die Menge, die wir in dem Array speichern wollen. 2:11 Um Beziehungen zwischen Werten unterschiedlichen Typs herzustellen, verwendet man so genannte Records. 2:18 Auf Deutsch: Verbunde. Aber bleiben wir mal bei Records, hört sich irgendwie cooler an. 2:22 :) Zum Beispiel kommen die Teile zum Einsatz, wenn man ein Steckbrief bastelt. 2:26 Das heißt verschiedene Informationen unterschiedlichen Typs werden zu einem Record zusammengefasst. Aber den Spaß könnt ihr euch noch in aller Ruhe in einem anderen Video reinballern. 2:36 Wichtig zu merken ist: Statische Strukturen haben ein festes Speicherschema und müssen bei mehr Daten einfach wieder neu erstellt werden. 2:44 Dieses Problemschen wird bei den dynamischen Strukturen einfach umkurvt. Bei diesen Datenstrukturen ist die Speicherstruktur während der Laufzeit veränderbar. 2:52 Heißt: Beim Hinzufügen oder Löschen einer Information wird der Speicher individuell angepasst. 2:58 Voll Geil! Wir müssen uns also vorher nicht überlegen, wie viel Platz zum Speichern wir jetzt brauchen. 3:04 Damit dat auch klappt wird die Zeigertechnik verwendet. Zeiger sind ein Verweis auf ein Objekt. 3:10 Also verweist meist ein Objekt auf das nächste. Wie das genau funktioniert ist abhängig von der Datenstruktur. 3:16 Von den dynamischen Strukturen gibt es jede Menge Wichtig dabei sind zum Beispiel die Listen. 3:21 Die sind ungefähr so wie die Anwesenheitsliste in der Schule. Bei Listen gibt es noch unterarten wie die: einfach verkettete Liste, 3:29 die Doppel verkettete Liste Es gibt noch die Schlangen auch Queues genannt. 3:33 Und den so genannten Stack oder auch Stapel. Wem das noch nicht reicht, der kann das ganze noch mit verschiedenen Arten von Bäumen machen: 3:41 Wie zum Beispiel dem Binär Baum. Oder auch Hashtabellen sind ne geile Sache um dynamische Datenstrukturen zu feiern :D 3:48 Suma Sumarum gibt es bei den dynamischen Datenstrukturen ein Menge Varianten. Im Detail gehen wir darauf in den nächsten Videos ein :) 3:54 Wichtig zu merken ist aber erstmal: Dynamische Datenstrukturen haben im gegensatz zu Statischen keine feste Größe. 4:01 Sie sind flexibel und individuell während dat Programm läuft veränderbar. Geilo! 4:06 Verschaffen wir uns nochmal ein Gesamtüberblick: Datenstrukturen sind dazu da Daten oder auch Informationen im Speicher zu verwalten und 4:14 zu organisieren. Datenstrukturen stellen dabei bestimmte Funktionen zu Verfügung: 4:19 Hinzufügen, Löschen und Suchen. Wir unterscheiden 2 Arten: Statische und Dynamische Datenstrukturen. 4:26 Bei den statischen Strukturen wird die Größe vor Beginn des Programms festgelegt. Sie ist dann während der Laufzeit nicht veränderbar. 4:33 Wollen wir mehr speichern, müssen wir eine neue Struktur anlegen. Bei den dynamischen wird die Größe während der Laufzeit festgelegt. 4:40 Was dazu führt, das wir flexibel auf Veränderung reagieren können. Alright Partypeople! 4:45 Wollt ihr jetzt die einzelnen Datenstrukturen genauer kennen lernen, dann checkt die Videos in dieser Reihe ab. 4:52 Bis dahin macht’s gut und Ciao!