2021-10-12 20:39:49 +02:00
|
|
|
|
# Algorithmen und Datenstrukturen I, WiSe 2021-22 #
|
|
|
|
|
|
2021-10-13 17:50:31 +02:00
|
|
|
|
Diese Repository ist für die Seminargruppe **j/l** am Freitag um 13:15–14:45
|
|
|
|
|
im Raum SG 3-14 bzw. SG 4-10 (alternierend).
|
2021-10-12 20:39:49 +02:00
|
|
|
|
|
2021-10-13 17:50:31 +02:00
|
|
|
|
**HINWEIS:** In diesem Repository werden keine Personen bezogenen Daten der Studierenden gespeichert.
|
2021-10-12 20:39:49 +02:00
|
|
|
|
|
|
|
|
|
In diesem Repository findet man:
|
|
|
|
|
|
2021-10-13 17:50:31 +02:00
|
|
|
|
- Protokolle der Seminargruppe [hier](./protocol).
|
2021-10-12 20:39:49 +02:00
|
|
|
|
- Notizen [hier](./notes).
|
|
|
|
|
- Symbolverzeichnis unter [notes/glossar.md](./notes/glossar.md).
|
|
|
|
|
- Referenzen unter [notes/quellen.md](./notes/quellen.md).
|
2021-10-15 12:44:50 +02:00
|
|
|
|
|
|
|
|
|
## Leistungen während des Semesters ##
|
|
|
|
|
|
|
|
|
|
- 12 x freiwillige Serien (unkorrigiert: Lösungen werden per Moodle veröffentlicht)
|
|
|
|
|
- 6 x Pflichtserien (jeweils 2 Wochen Bearbeitungsdauer)
|
|
|
|
|
- wöchentlich werden im den Lernstunden _andere_ Aufgabenblätter im Raum angezeigt und von Studierenden bearbeitet.
|
|
|
|
|
|
|
|
|
|
## Vorleistungen ##
|
|
|
|
|
|
|
|
|
|
- ≥ 50% der Punkte aus den 6 Pflichtserien sollen geschafft werden.
|
|
|
|
|
- _nur digitale Abgabe_!
|
2021-10-22 15:28:52 +02:00
|
|
|
|
|
|
|
|
|
## Code ##
|
|
|
|
|
|
2021-10-24 13:18:43 +02:00
|
|
|
|
Im Unterordner [`code`](./code) kann man ein Python-Projekt finden,
|
|
|
|
|
in dem verschiedene Algorithmen implementiert werden
|
|
|
|
|
(siehe insbes. [`code/algorithms`](./code/algorithms)).
|
2021-10-22 15:28:52 +02:00
|
|
|
|
Man kann gerne den Code benutzen, in einer eigenen Repository verändern,
|
|
|
|
|
und mit den in dem Kurs präsentierten Algorithmen herumexperimentieren.
|
|
|
|
|
|
2021-10-23 17:55:14 +02:00
|
|
|
|
### Systemvoraussetzungen ###
|
|
|
|
|
|
|
|
|
|
Python version 3.x.x (idealerweise zumindest 3.9.5) plus folgende Module:
|
|
|
|
|
|
|
|
|
|
- argparse>=1.4.0
|
|
|
|
|
- pyyaml>=5.4.1
|
|
|
|
|
- typing>=3.7.4.3
|
|
|
|
|
|
|
|
|
|
(ACHTUNG: diese Liste könnte später im Kurs länger werden)
|
|
|
|
|
|
|
|
|
|
Diese lassen sich mittels
|
|
|
|
|
```bash
|
2021-10-24 12:27:50 +02:00
|
|
|
|
python3 -m pip install {name des Moduls}; # linux, osx
|
|
|
|
|
py -3 -m pip install {name des Moduls}; # Windows
|
2021-10-23 17:55:14 +02:00
|
|
|
|
```
|
|
|
|
|
installieren.
|
|
|
|
|
Man kann auch die Version mittels etwa `{name}==1.2.3` oder `{name}>=1.2.3` spezifizieren.
|
|
|
|
|
Alternativ verwende man `python3 -m pip install --upgrade {name}` bzw. `py -3 ...`.
|
|
|
|
|
|
|
|
|
|
### Ausführung ###
|
|
|
|
|
|
2021-10-22 15:28:52 +02:00
|
|
|
|
Um den Python Code auszuführen, bspw. im Bash:
|
|
|
|
|
```bash
|
2021-10-23 11:28:34 +02:00
|
|
|
|
python3 code/main.py all; # linux, OSX
|
|
|
|
|
py -3 code/main.py all; # Windows
|
2021-10-22 15:28:52 +02:00
|
|
|
|
```
|
|
|
|
|
Oder man erstelle einen bash Skript wie `run.sh`, trage die Befehle da ein und führe
|
|
|
|
|
```bash
|
|
|
|
|
chmod +x run.sh; # nur einmalig nötig
|
|
|
|
|
./run.sh
|
|
|
|
|
```
|
|
|
|
|
aus.
|
2021-10-24 12:27:50 +02:00
|
|
|
|
|
|
|
|
|
Der Befehl `[python3 | py -3] code/main.py -h` zeigt die Gebrauchsanleitung an.
|