Klassen und Objekte & Datenstrukturen
Klassen sind Baupläne für Objekte - wie eine Schablone für gleichartige Dinge. Eine Person-Klasse hat Attribute wie name und adresse sowie Methoden wie getName(). Vererbung mit extends ermöglicht es, dass eine Schueler-Klasse alle Eigenschaften von Person erbt und eigene hinzufügt.
Statische Datenstrukturen wie Arrays haben feste Größen (new intlaenge), während dynamische Strukturen wachsen können. Strings bearbeitest du mit Methoden wie length(), charAt() oder concat().
Stapel (FILO) funktionieren wie ein Tellerstapel - das letzte Element kommt zuerst raus. Schlangen (FIFO) arbeiten wie eine Warteschlange - wer zuerst kommt, wird zuerst bedient. Binärbäume organisieren Daten hierarchisch und ermöglichen schnelle Suchen durch Traversierungen Pre−Order,In−Order,Post−Order.
Sortieralgorithmen ordnen deine Daten: Bubble Sort (langsam aber einfach, O(n²)), Selection Sort (findet immer das kleinste Element, O(n²)) und Insertion Sort (fügt Elemente an der richtigen Stelle ein, O(n·log n)).
Wichtig: Die Wahl der richtigen Datenstruktur entscheidet über die Performance deines Programms!