Nickname ändern

1.1.3 Geeignete Datenstrukturen zur Implementierung von Programmen auswählen und einsetzen

Unterrichtsmaterial zum Lernziel: Die Maturandinnen und Maturanden können geeignete Datenstrukturen zur Implementierung von Programmen auswählen und einsetzen.

1.1 Programmierkonzepte · 1. Algorithmen und Programmierung

Wie wird sortiert?
agil ▲0/3algorithmen ▲0/3app-entwicklung ▲0/3assembler ▲0/3augmented-reality ▲0/3

Deklarative und funktionale Programmierung mit Python, Elm, Racket und Prolog

Umfassendes Lehrmaterial zur deklarativen Programmierung mit Schwerpunkt auf funktionaler Programmierung in Python, Elm und Racket sowie logischer Programmierung. Das Material deckt Programmierkonzepte, Datenstrukturen, Algorithmen und Webentwicklung ab.

95AI-Score

Dijkstra-Algorithmus und Dictionaries in Python

Eine vertiefende Programmier-Challenge, bei der Schülerinnen und Schüler den Dijkstra-Algorithmus und die Verwendung von Python-Dictionaries zur effizienten Repräsentation von Graphen schrittweise implementieren.

88AI-Score

Implementierung von Schlangen in Python

Dieses Material erklärt die objektorientierte Implementierung des abstrakten Datentyps Schlange (Queue) in Python anhand einer Klasse. Anhand eines Python-Protokolls wird die Nutzung der Schlangenoperationen demonstriert und mit einer praktischen Aufgabe zum Testen ergänzt.

85AI-Score

Einführung in Python-Listen

Dieses Jupyter Notebook vermittelt die Grundlagen zur Arbeit mit Listen in Python anhand von praxisnahen Codebeispielen. Es behandelt das Erstellen von Listen, den Zugriff über Indizes, Slicing sowie das Hinzufügen, Löschen und Verknüpfen von Elementen.

85AI-Score

Listen und Listenfunktionen in Python

Dieses Unterrichtsmaterial erklärt anhand von Codebeispielen, wie Listen in Python mit `for`-Schleifen gefüllt, über Indizes bearbeitet und mit `len` ausgewertet werden. Es vermittelt grundlegende Programmiertechniken im Umgang mit Datenstrukturen.

85AI-Score

Recursive Segment Trees and Lazy Propagation

Dieses Material erklärt die Implementierung von rekursiven Segmentbäumen und Lazy Propagation in C++. Es beschreibt mathematische Grundlagen wie Assoziativität und Distributivität sowie praktische Code-Beispiele für Bereichsabfragen und Updates.

85AI-Score

Fenwick Trees (Binary Indexed Trees) in C++

Dieses fortgeschrittene Dokument behandelt die Theorie und Implementierung von Fenwick-Bäumen (Binary Indexed Trees) in C++. Es werden verschiedene Aspekte wie dynamische Prefix-Summen, multidimensionale Varianten, Bereichsabfragen sowie Koordinatenkompression detailliert erläutert.

85AI-Score

C++ Standardbibliothek für die Schweizer Olympiade in Informatik (SOI)

Dieses Skript bietet eine Einführung in die Nutzung der C++ Standardbibliothek für fortgeschrittene Programmieraufgaben, speziell im Kontext der Schweizer Olympiade in Informatik (SOI). Es behandelt wichtige Container wie Vector, Map und Set, fortgeschrittene Datenstrukturen, Iteratoren, Standardalgorithmen sowie nützliche Debugging-Techniken.

85AI-Score

The Complete Course of the Raku Programming Language

Ein umfassender, praxisnaher Programmierkurs für die Sprache Raku, unterteilt in fünf Module sowie Tests und Vertiefungsübungen. Er deckt Grundlagen, fortgeschrittene Konzepte, objektorientierte Programmierung, Grammatiken und Webdienste ab.

85AI-Score

Lineare Listen in der Informatik

Das Material erklärt das Konzept linearer Listen als verkettete Datenstrukturen. Es definiert die Eigenschaften von Listenelementen wie Listenanfang und -ende und beschreibt den dynamischen Charakter dieses Datentyps.

85AI-Score

Sammlung von Unterrichtsmaterialien zu fortgeschrittenen Datenstrukturen, Algorithmen und Java-Programmierung

Eine umfangreiche Sammlung von Materialien, Aufgaben und Programmierprojekten in Java und JavaScript für den Informatikunterricht. Sie deckt Themen wie Datenstrukturen (Listen, Bäume, Graphen), Sortieralgorithmen, objektorientierte Entwurfsmuster und fortgeschrittene Programmierkonzepte ab.

85AI-Score

Brief Tour of the Python Standard Library - Part II

Diese offizielle Python-Dokumentation stellt fortgeschrittene Module der Standardbibliothek vor, darunter Formatierung, Templating, Binärdatenverarbeitung, Multithreading, Logging, schwache Referenzen, alternative Datenstrukturen und Dezimalarithmetik.

85AI-Score

Dictionaries in Python

Dieses Unterrichtsmaterial führt in die Datenstruktur der Dictionaries (assoziative Arrays) in Python ein. Es erklärt die Syntax, Erstellungsmethoden sowie grundlegende Operationen wie Zugriff, Hinzufügen, Löschen und Iterieren über Schlüssel und Werte.

85AI-Score

Python Sets

Dieses Lehrmaterial erklärt die Datenstruktur der Mengen (Sets) in Python. Es behandelt die Definition von Mengen, grundlegende Operationen mit Elementen sowie mathematische Mengenoperationen wie Schnittmenge und Vereinigung.

85AI-Score

Zweidimensionale Listen und Arrays in Python

Dieses Lehrmaterial erklärt detailliert die Erstellung, Verarbeitung und Einlesung von zweidimensionalen Listen (Matrizen) in Python. Es behandelt typische Stolperfallen wie Referenzkopien, den Einsatz von geschachtelten Schleifen sowie List Comprehensions (Generatoren).

85AI-Score

Lineare Datentypen: Die Liste

Dieses Leitprogramm führt Schülerinnen und Schüler in die Konzepte von Arrays und Listen ein. Sie untersuchen die Speicherdarstellung, lernen den Umgang mit Programmtext für Listen und erstellen eine eigene Kontaktdatenverwaltung in Java.

85AI-Score

Binäre Suchbäume

Dieses Leitprogramm bietet eine strukturierte Einführung in das Thema der Datenstrukturen mit speziellem Fokus auf binäre Suchbäume. Es richtet sich an Lernende mit Vorkenntnissen in einer Programmiersprache, verketteten Listen sowie Rekursion.

85AI-Score

Bäume in der Informatik

Dieses Leitprogramm bietet eine fundierte Einführung in die Datenstruktur der Bäume sowie verwandte grundlegende Datenstrukturen und deren Anwendung. Es behandelt zudem das Prinzip der Rekursion und erfordert Vorkenntnisse in Java.

85AI-Score

Advent of Code: Marble Mania

Eine Programmieraufgabe aus dem Advent of Code, bei der ein komplexes Regelwerk für ein Murmelspiel in einem Kreis simuliert und effizient gelöst werden muss. Dabei wird insbesondere der Umgang mit Datenstrukturen und deren Performance bei grossen Datenmengen geschult.

75AI-Score

Einführung in Arrays (JavaScript)

Dieses Lehrmittel erklärt das Konzept von Arrays als zusammengesetzte Datentypen anhand einer anschaulichen Metapher. Es zeigt grundlegende Operationen, Syntax und die Arbeit mit Arrays in JavaScript.

75AI-Score

Mehrdimensionale Arrays in Java

Dieses kurze Dokument erklärt die Syntax und Deklaration von mehrdimensionalen Arrays in Java anhand prägnanter Code-Beispiele. Es wird gezeigt, wie innere und äussere Array-Typen definiert und Speicherbereiche alloziert werden.

75AI-Score

Einstieg - Warteschlangen und Druckerwarteschlange

Das Material führt anhand des Beispiels einer Druckerwarteschlange und eines Python-Dialogs in das Prinzip von Warteschlangen ein. Anhand einer konkreten Aufgabe sollen die Lernenden die Funktionsweise der verwendeten Liste als Puffer analysieren.

75AI-Score

Fachkonzept Stapel (Stack)

Dieses Material erklärt das grundlegende Konzept eines Stapels (Stack) als Datenstruktur anhand alltäglicher Beispiele und führt den abstrakten Datentyp mit typischen Operationen wie Push, Pop und Top ein. Es erläutert das LIFO-Prinzip (Last In, First Out) für den Informatikunterricht.

75AI-Score

Der Stapel als Datenstruktur

Das Material führt in das Konzept des Stapels (Stack) als Datenstruktur ein und zeigt, wie dieser mithilfe von Listen und objektorientierter Programmierung zur Lösung von Problemen implementiert und genutzt werden kann.

75AI-Score

Persistent Segment Trees und Datenstrukturen

Der Artikel erklärt das Konzept persistenter Datenstrukturen am Beispiel von Segment Trees und zeigt, wie effizient Versionen durch Zeigerstrukturen erhalten bleiben können. Es wird beschrieben, wie Änderungen nur O(log n) Knoten betreffen, wodurch das Kopieren des gesamten Baumes vermieden wird.

75AI-Score

Generic datastructure traversals with roles and introspection in Raku

Der Artikel erklärt, wie man generische Datenstruktur-Traversierungen (bekannt als 'Scrap Your Boilerplate') in der Programmiersprache Raku implementiert. Anhand von rollenbasierten Datentypen und Metaprogrammierung (Introspektion) wird gezeigt, wie rekursive Bäume und ASTs ohne redundanten Code durchsucht und modifiziert werden können.

webseite 1.1.21.1.3
75AI-Score

Raku Advanced: Introspecting Containers

Dieses fortgeschrittene Tutorial erklärt das Konzept der Introspektion in Raku mithilfe sogenannter Pseudo-Methoden wie WHAT, VAR, WHO und HOW. Es zeigt auf, wie Variablen und Container in ihrer Typisierung untersucht werden können, und beinhaltet zugehörige Übungen sowie ein Quiz.

webseite 1.1.11.1.3
75AI-Score

Bäume als grundlegende Datenstrukturen

Der Text führt in das Konzept von Bäumen als fundamentale Datenstrukturen der Informatik ein. Es werden Beispiele wie das DOM von Webseiten, die formale Terminologie sowie spezielle Formen wie Binärbäume vorgestellt.

75AI-Score

Wortvorkommen zählen

Eine Programmieraufgabe, bei der ein Text eingelesen und für jedes Wort die Anzahl seiner vorherigen Vorkommen bestimmt werden soll. Die Lösung erfordert den Einsatz von grundlegenden Programmierkonzepten und Datenstrukturen.

75AI-Score

Turtle Invaders in Python: Modularer Code, Listen und Zufall

Dieses Unterrichtsmaterial zeigt anhand eines kleinen Python-Spiels ('Turtle Invaders'), wie Code auf mehrere Dateien aufgeteilt, Zeitintervalle gesteuert, Listen für Objekte verwendet und Zufallszahlen eingesetzt werden. Es verbindet praktische Programmierkonzepte mit spielerischer Umsetzung.

75AI-Score

Multi-dimensional arrays in Java

Das Material erklärt kurz und prägnant mehrdimensionale Arrays in Java, wobei zwischen rechteckigen und ungleichmässigen (jagged) Arrays unterschieden wird. Anhand von Codebeispielen wird gezeigt, wie solche Arrays deklariert, initialisiert und verändert werden.

45AI-Score

Course of Raku: Sets, bags, and mixes

Der Text erklärt fortgeschrittene Datentypen in der Programmiersprache Raku, insbesondere Mengen (Sets), Bags und Mixes. Er zeigt anhand von Code-Beispielen, wie diese speziellen Container erstellt und abgefragt werden.

45AI-Score

Course of Raku: Advanced Types

Dieses Material bietet eine fortgeschrittene Übersicht über integrierte Datentypen in der Programmiersprache Raku, darunter native und dimensionierte Typen, Strings, Datum und Uhrzeit sowie Mengenstrukturen.

45AI-Score

Expression Trees in Programming

Ein kurzer Einstieg in den Aufbau und die Umwandlung von Ausdrucksbäumen (Expression Trees), die weit über einfache Arithmetik hinausgehen. Lernende üben das Erstellen von Bäumen aus Ausdrücken und umgekehrt.

45AI-Score

Course of Raku: Lists and Positional Data Types

Das Material erklärt grundlegende Konzepte von unveränderlichen Listen und Arrays in der Programmiersprache Raku. Es zeigt die Indizierung und Zuweisung von Listenelementen anhand kurzer Code-Beispiele.

webseite 1.3.51.1.3
40AI-Score