1. Introduction
2. C/C++ programming language
3. Data structures
- book-index.zip
Intro example on a class definition in C++. In the lecture we compare it to the Python code from book-index-python.ipynb.
- book-index-python.ipynb
Jupyter notebook with a simple object-oriented code in Python (roughly corresponding to the C++ implementation in book-index.zip).
- chowlk.zip
Test of the Chowlk E-R diagram tool (working on draw.io) allowing export of the diagrams as an OWL ontology in TTL format
- city-country.zip
Defines two classes, City and Country, with a two-way relation between them expressing that the city is in a country (or, that the country contains the city). In the lecture this is discussed jointly with the corresponding entity-relationship diagram.
- copying-and-moving.zip
Extended version of sequences-int.zip (singly and doubly linked lists and dynamic arrays). This version contains all the elements from the rule of five: Destructor, copy constructor, copy assignment operator, move constructor, move assignment operator.
- incidence-list-graph.zip
Graph data structure implemented through incidence lists; includes computation of shortest paths by Dijkstra's algorithm.
- io-operator-overloading.zip
Overloading the stream read and write operators and using a string stream.
- list-template.zip
Singly-linked list implementation (from sequences-int.zip), but changed to a template and used for lists of integers and of strings.
- literature-indices.zip
Class hierarchy with one superclass and to subclasses (child classes).
- problem-18.zip
Example solution to tutorial problem 18 from the third worksheet.
- queens-count-threats.zip
Example solution to tutorial problems 21 and 22 from the third worksheet.
- repulsive-spheres.zip
Evaluate a configuration of spheres in a box, counting the number of overlaps between spheres.
- sequences-int.zip
Data structures for sequences of integer numbers: Singly and doubly linked lists and dynamic arrays. (Basic version; compare copying-and-moving.zip which extends this by copy/move constructors and assignment operators.)
4. Concurrency
5. Production
Index