Punkteverteilung für Blatt 04
=============================
Zeiger, Referenzen oder Kopie?
------------------------------
- [ ] `swap` (2 Pkt)
- [ ] `swap(double*,double*)` (2 Pkt)
- [ ] `as_binary_string` (2 Pkt)
- [ ] `central_character` (2 Pkt)
- [ ] Warum lassen sich die Codebeispiele nicht kompilieren? Beispiel 1 erklärt (1 Pkt)
- [ ] Warum lassen sich die Codebeispiele nicht kompilieren? Beispiel 2 erklärt (2 Pkt)
Zeigerdiagramme
---------------
- [ ] Bild 1 (2 Pkt)
- [ ] Bild 2 (2 Pkt)
- [ ] Bild 3 (3 Pkt)
- [ ] Bild 4 (3 Pkt)
- [ ] Bild 5 (2 Pkt)
- [ ] **Bonus**: `tmp4 = a + b + c;` (zusätzlich 2 Pkt)
Doppelt verkettete Liste
------------------------
- [ ] 1) Deklaration der Strukts im Header (1 Pkt)
- [ ] 2) `insertAfter(int value)` (2 Pkt)
- [ ] 2) `insertBefore(int value)` (2 Pkt)
- [ ] 2) `Element* remove()` (2 Pkt)
- [ ] 3) `void append(int val)` (1 Pkt)
- [ ] 3) `void prepend(int val)` (1 Pkt)
- [ ] 3) `bool remove(size_t position)` (1 Pkt)
- [ ] 3) `bool insertAt(int val, size_t position)` (1 Pkt)
- [ ] 3) `size_t size()` (1 Pkt)
- [ ] 3) `int operator[](size_t position)` oder `int get(size_t position)` (1 Pkt)
- [ ] 3) `void print()` (1 Pkt)
- [ ] 3) **Bonus**: `void reverse()` (zusätzlich 2 Pkt)
- [ ] 3) **Bonus**: `void append_merge(DoublyLinkedList &b)` (zusätzlich 2 Pkt)
- [ ] 3) **Bonus**: `void prepend_merge(DoublyLinkedList &b)` (zusätzlich 2 Pkt)
- [ ] 3) **Bonus**: `void sort()` (zusätzlich 2 Pkt)
- [ ] 4) main-Methode (1 Pkt)
- [ ] 4) Beispiele für schnelle / langsame Operationen (2 Pkt)