====== Abi Checkliste Datenstrukturen ====== * [[https://www.bildungsplaene-bw.de/,Lde/LS/BP2016BW/ALLG/GYM/INF/IK/11-12-LF/01/02|Bildungsplan Datenstrukturen]] ===== Leitfragen ===== ==== Arrays ==== * Was ist ein Array? Wie wird es in Java deklariert? Wie kann es initialisiert werden (mehrere Möglichkeiten?)? * Ein Array ist in Java ein Referenzdatentyp. Was für Folgen hat das, wenn man beispielsweise ein Array in ein anderes kopieren möchte? * Wie kann man über die Elemente eines Arrays iterieren? Nenne zwei Möglichkeiten (for/foreach) und schreibe sie nieder. * Was ist ein zweidimensionales Array? Wie wird es deklariert, wie initialisiert? * Wie iteriert man über ein zweidimensionales Array. ==== Abstrakte Datentypen ==== * Was versteht man unter einem "abstrakten Datentyp"? Was bedeutet der Begriff "abstrakt" in diesem Zusammenhang? * Erläutere, warum eine ArrayList in Java ein "abstrakter" Datentyp ist. * Welche Eigenschaften und essentiellen Methoden/Operationen haben die folgenden ADTs: * [[faecher:informatik:oberstufe:adt:verkettete_liste:start|Verkettete Liste]] * [[faecher:informatik:oberstufe:adt:stack:start|Stapel (Stack)]] * [[faecher:informatik:oberstufe:adt:queue:start|Schlange (Queue)]] * [[faecher:informatik:oberstufe:adt:set:start|Menge (Set)]] * [[faecher:informatik:oberstufe:adt:baeume:start|Baum (Tree)]] * Welche Bedeutung haben die folgenden Akronyme: LIFO bzw. FIFO? Zu welchen ADTs gehören diese Begriffe jeweils? * Wie sieht eine geeignete Datenstruktur aus, wenn man in Java eine verkettete Liste, ein Schlange oder einen Stack implementieren möchte? Zeichne UML Diagramme! ==== Binärbäume ==== * Mit welcher Datenstruktur kann man einen Binärbaum implementieren? Zeichne ein UML Diagramm. * Was bedeuten die Begriffe //Wur­zel//, //in­ne­rer Kno­ten//, //Blatt// und //Höhe// im Zusammenhang mit Binärbäumen? Eine Skizze kann helfen, das zu veranschaulichen. *