Notizen, Zusammenfassungen, Arbeiten, Prüfungen und Übungen für Informatik für Hochschule

Tiefensuche, Heuristiken und Spieltheorie in der KI

Informatik5,83 KB

Tiefensuche (Depth-First Search)

Die Tiefensuche (Depth-First Search, DFS) ist ein Algorithmus zum Traversieren oder Suchen von Baum- oder Graphdatenstrukturen. Der Algorithmus beginnt am Wurzelknoten (Auswahl eines beliebigen Knotens als Wurzelknoten im Fall eines Graphen) und erkundet so weit wie möglich entlang jedes Zweigs, bevor er zurückweicht.

Heuristiken in der KI

Definition

Eine Heuristik ist eine Technik, die entwickelt wurde, um ein Problem schneller zu lösen, wenn klassische Methoden zu langsam sind, oder um eine ungefähre Lösung zu finden, wenn klassische Methoden keine exakte Lösung finden können. Dies geschieht durch den Verzicht auf Optimalität, Vollständigkeit, Genauigkeit oder Präzision im Austausch für Geschwindigkeit....

Weiterlesen "Tiefensuche, Heuristiken und Spieltheorie in der KI" »

Netzwerktechnik: Übungsfragen zu Switches und VLANs

Informatik911,4 KB

Grundlagen der Switch-Konfiguration

Welches sind die drei wahren Aussagen zu den Standardeinstellungen eines neuen Switches? (Wählen Sie zwei.)

  • Alle Switch-Ports sind VLAN 1 zugeordnet.
  • Alle Schnittstellen sind auf automatisch eingestellt.
  • Das Flash-Verzeichnis enthält das IOS-Image.

Image

Spanning-Tree-Konfiguration

Siehe Abbildung. Die Prioritäten für die Port-Spanning-Tree sind unter jeder Schnittstelle aufgeführt. Der Netzwerkadministrator gibt den Befehl spanning-tree vlan 1 root primary auf S4 ein. Welche zwei Ergebnisse sind korrekt? (Wählen Sie zwei.)

  • S1 Gi0/1 wird ein Root-Port.
  • S4 Gi0/1 wird ein Root-Port.
  • S2 Gi0/2 wird ein nicht-bezeichneter Port.

Zugriff auf Access Points

Welche Methode ermöglicht eine administrative Verbindung zu einem...

Weiterlesen "Netzwerktechnik: Übungsfragen zu Switches und VLANs" »

Datenbanksysteme: Grundlagen, Modelle und Sprachen

Informatik36,83 KB

Datenbanksysteme

Eine Datenbank besteht aus:

  • Datenbank: Eine Sammlung von zusammenhängenden Daten. Ein Zug besteht aus:
    • Data Dictionary: Enthält eine Beschreibung der Struktur der DB, die "Metadaten".
    • Daten
  • Das Management-System-Datenbank: Eine Sammlung von Programmen, die es ermöglichen, die Datenbank zu definieren, erstellen, bearbeiten und den Zugriff darauf zu steuern.
  • Benutzer: Administratoren, Designer, Endverbraucher, und so weiter.

Vorteile der Verwendung von DBMS

  • Minderung und Kontrolle von Redundanz
  • Vermeidung von Inkonsistenzen (unterschiedliche Kopien des Originals)
  • Aufrechterhaltung der Integrität (d.h. gespeicherte Informationen zu korrigieren). Für diese werden sog. Integritätsbedingungen verwendet (Datentyp, Länge, etc.).
  • Leicht
...
Weiterlesen "Datenbanksysteme: Grundlagen, Modelle und Sprachen" »

Grundlagen der Programmierung und Softwareentwicklung

Informatik2,73 KB

Grundbegriffe der Programmierung

Variable: Variablen sind Datenstrukturen, die ihre Inhalte während der gesamten Laufzeit eines Programms ändern können. Eine Variable ist ein reservierter Bereich im Hauptspeicher des Computers.

Syntax: Teil der Programmplanung und Programmierung, der die Struktur der Elemente (if, while, for, etc.) definiert.

Semantik: Bedeutung der Elemente und Strukturen (was jedes Element bewirkt).

Klasse: Bauplan oder Abstraktion eines Objekts, bestehend aus Daten (Member-Variablen oder Eigenschaften) und den Operationen zur Datenverarbeitung (Funktionen / Methoden).

Algorithmus: Eine Reihe von Schritten, die erforderlich sind, um ein Problem zu lösen.

Modulare Programmierung: Programmiermuster, das algorithmische Kapselung...

Weiterlesen "Grundlagen der Programmierung und Softwareentwicklung" »

Betriebssysteme & Verteilte Systeme: Kernkonzepte erklärt

Informatik13,38 KB

Speicherbereiche: Code, Stack & Heap erklärt

  • Code: Der Code-Bereich eines Programms enthält den ausführbaren Code, der vom Prozessor ausgeführt wird. Dieser Bereich ist in der Regel schreibgeschützt, da der Code während der Programmausführung nicht verändert werden sollte. Der Code ist statisch und bleibt im Wesentlichen unverändert, solange das Programm läuft.

  • Stack: Der Stack ist ein Speicherbereich für die Verwaltung von Funktionsaufrufen, lokalen Variablen und Rücksprungadressen. Er wächst und schrumpft dynamisch mit jedem Funktionsaufruf und dessen Rückkehr. Jede aufgerufene Funktion legt einen neuen Stack-Frame auf dem Stack ab, der nach Beendigung der Funktion wieder entfernt wird.

  • Heap: Der Heap ist ein dynamischer Speicherbereich,

...

Weiterlesen "Betriebssysteme & Verteilte Systeme: Kernkonzepte erklärt" »

Grundlagen der Betriebssysteme und Virtualisierung

Informatik3 KB

Virtuelle Maschinen

Eine virtuelle Maschine (VM) ist eine Software, die einen Computer simuliert und Programme wie ein physischer Rechner ausführen kann. Diese Software wurde ursprünglich als „ein effizientes, isoliertes Duplikat einer physischen Maschine“ definiert. Der Begriff umfasst heute auch virtuelle Maschinen, deren Hardware keine direkte Entsprechung zu einer tatsächlichen Maschine hat.

Die Shell

Eine Shell ist eine Software, die dem Nutzer eine Schnittstelle zur Verfügung stellt. Normalerweise bezieht sich der Begriff auf die Betriebssystem-Shell, die den Zugriff auf die Dienste des Kernels ermöglicht. Betriebssystem-Shells fallen im Allgemeinen nach ihren Schnittstellen in zwei Kategorien:

  • Kommandozeile (CLI)
  • Grafische Benutzeroberfläche
...
Weiterlesen "Grundlagen der Betriebssysteme und Virtualisierung" »

Grundlagen der Informatik und objektorientierten Programmierung

Informatik4,42 KB

1. Einführung in die Informatik

Computer: Eine Zusammenstellung wissenschaftlicher Erkenntnisse, Techniken und Technologien, die die automatisierte Datenverarbeitung ermöglichen.

Computer-System: Ein System zur Informationsverarbeitung, bestehend aus zusammenhängenden Einheiten: Hardware (Prozessor), Software (Programme) und Peopleware (Anwender).

2. Programmieren und Sprachen

Software: Ein Satz von Anweisungen, die dem Computer präzise vorgeben, was zu tun ist. Programme besitzen keine Intelligenz, Initiative, Phantasie oder Erfindungsgabe.

Modell: Eine Vereinfachung der Realität, die es ermöglicht, überflüssige Details zu abstrahieren und sich auf das Wesentliche zu konzentrieren.

Programmiersprachen

Klassifizierung nach Abstraktionsebene:...

Weiterlesen "Grundlagen der Informatik und objektorientierten Programmierung" »

Funktionen und Typen von Assemblern erklärt

Informatik2,51 KB

Funktionen eines Assemblers

Die primäre Aufgabe eines Assemblers ist die Übersetzung von Assembler-Programmcode in Maschinensprache. Im Wesentlichen übernimmt der Assembler folgende Aufgaben:

  • Umwandlung von Opcodes: Konvertierung von Mnemonics (z. B. LDA, STX) in den entsprechenden Maschinencode.
  • Symbolische Operanden: Umwandlung von symbolischen Operanden (Tags oder Variablen) in die tatsächlichen Speicheradressen.
  • Formatierung: Erstellung der Anweisungen in Maschinensprache im korrekten Format.
  • Konstanten: Umwandlung der im Programm definierten Konstanten in ihre reale Darstellung.
  • Listing-Erstellung: Erstellung eines Listings, das den Assemblercode dem Maschinencode gegenüberstellt.
  • Assembler-Direktiven: Verarbeitung von Steuerbefehlen, die
...
Weiterlesen "Funktionen und Typen von Assemblern erklärt" »

Internet-Radio: Ein neues Konzept

Informatik3,97 KB

Internet-Radio ist nicht Radio im herkömmlichen Sinne, es ist mehr als Radio. Es ist ein Klangbild mit kontextualisierten und schriftlichen Angaben, zusätzlich zu der strengen Übertragung der herkömmlichen Programmierung, die von jedem der Radiosender auf Mittelwelle und UKW angeboten wird. Im Internet entdeckt man also zwei Arten von Klang:

  • Das Radio im strengen Sinne, wie wir es kennen, mit einer kontinuierlichen Übertragung von strukturierter Programmierung, die einer zeitlichen Abfolge unterliegt.
  • Eine Reihe von schriftlichen Informationen über die verschiedenen Inhalte, angereichert mit Bildern und Tonmaterial.

Für uns alle ist es nicht nur einfacher, sondern auch komfortabler, über Zeitungen, Radio oder Fernsehen im Internet zu sprechen....

Weiterlesen "Internet-Radio: Ein neues Konzept" »

Grundlagen von Datenbanken: Typen, Modellierung und Optimierung

Informatik14,2 KB

Datenbanktypen: Eine Übersicht

Es gibt drei Hauptmodelle von Datenbanken: hierarchische, Netzwerk- und relationale.

Hierarchische Datenbanken

Eine hierarchische Datenbank verwendet eine hierarchische Struktur zur logischen Darstellung von Daten. Dateien sind in Hierarchien organisiert, wobei jede Datei in der Regel einer Entität der Datenbank entspricht. Hierarchische Bäume werden mit der Wurzel oben und den Blättern unten dargestellt.

Merkmale hierarchischer Datenbanken

  • Datensegmente sind in einer hierarchischen Struktur angeordnet.
  • Segmente sind durch eine oder mehrere Beziehungen miteinander verbunden.
  • Jeder Knoten besteht aus einem oder mehreren Feldern.
  • Jedes Vorkommen eines übergeordneten Datensatzes kann eine unterschiedliche Anzahl von
...
Weiterlesen "Grundlagen von Datenbanken: Typen, Modellierung und Optimierung" »