Grundlagen der Informatik: Datenstrukturen und CLR
Eingeordnet in Informatik
Geschrieben am in
Deutsch mit einer Größe von 2,94 KB
B-Bäume
B-Bäume sind Baum-Datenstrukturen, die häufig in Implementierungen von Datenbanken und Dateisystemen zu finden sind. Im Gegensatz zu binären Suchbäumen kann jeder Knoten mehr als zwei Kinder haben.
Binäre Bäume
Ein binärer Baum ist eine Datenstruktur, bei der jeder Knoten maximal zwei Kinder hat (daher der Name „binär“). Besitzt ein Kind einen Verweis auf null und speichert somit keine Daten, wird dies als externer Knoten bezeichnet. Andernfalls spricht man von einem internen Knoten.
Hashing und Hash-Funktionen
Hashing bezeichnet eine Funktion oder Methode, um Schlüssel zu erzeugen, die ein Dokument, eine Datei oder Daten nahezu eindeutig repräsentieren. Ein Hash ist das Ergebnis dieser Funktion oder eines Algorithmus.
- Eigenschaft: Wenn zwei Ergebnisse einer Funktion unterschiedlich sind, müssen auch die beiden Eingaben unterschiedlich sein.
- Kollisionen: Es kann vorkommen, dass verschiedene Objekte zum gleichen Hash-Ergebnis führen, da die Menge der möglichen Schlüssel kleiner ist als die Summe der möglichen Objekte.
Baumtraversierung
Preorder (Vorbestellung)
Zuerst wird die Wurzel erkundet und dann jedes der Kinder
in Preorder-Reihenfolge.
Inorder (Symmetrische Ordnung)
Zuerst wird das erste Kind 1 besucht, dann die Wurzel und anschließend jedes der Kinder
in symmetrischer Ordnung.
Postorder
Zuerst werden alle Kinder
in der entsprechenden Reihenfolge besucht und schließlich die Wurzel.
Komponenten der Laufzeitumgebung
- Garbage Collection: Entfernt ungenutzte Objekte automatisch aus dem Speicher.
- Security Engine: Verwaltet die Sicherheit des ausgeführten Codes.
- Class Loader: Ermöglicht das Laden von Klassen in den Speicher.
Common Language Specification (CLS)
Um eine sprachunabhängige Interaktion zwischen Objekten zu ermöglichen, müssen Objekte nur Funktionen bereitstellen, die für alle beteiligten Sprachen kompatibel sind. Die Common Language Specification (CLS) definiert hierfür eine Reihe grundlegender Sprachelemente.
Common Language Runtime (CLR)
Die CLR führt eine automatische Steuerung des Codes durch, um eine sichere Ausführung zu gewährleisten und Anwendungsfehler zu kontrollieren.
Laufzeit (Runtime)
Als Laufzeit wird das Zeitintervall bezeichnet, in dem ein Programm auf einem Betriebssystem ausgeführt wird.