mirror of
https://gitlab.com/harald.mueller/aktuelle.kurse.git
synced 2024-11-24 02:31:58 +01:00
muh
This commit is contained in:
parent
aa15823f41
commit
7347bb8139
37
m411/2/AufgabeTask04_Files-und_Daten_lesen_schreiben.md
Normal file
37
m411/2/AufgabeTask04_Files-und_Daten_lesen_schreiben.md
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
Aufgabe/Task: Nr. 04
|
||||||
|
|
||||||
|
Thema: Files lesen & schreiben
|
||||||
|
|
||||||
|
Geschätzter Zeitbedarf: 30-70 min pro Aufgabe
|
||||||
|
|
||||||
|
Aufgabenbeschreibung:
|
||||||
|
|
||||||
|
2.1 Textfiles einlesen mit BufferedReader
|
||||||
|
|
||||||
|
<https://bscw.tbz.ch/bscw/bscw.cgi/d32029849/script2_1_Textfiles_einlesen_BufferedReader.pdf>
|
||||||
|
|
||||||
|
2.2 Textfiles einlesen BufferedReader oder Scanner
|
||||||
|
|
||||||
|
<https://bscw.tbz.ch/bscw/bscw.cgi/d32029854/script2_2_Textfiles_einlesen_BufferedReader_o_Scanner.pdf>
|
||||||
|
|
||||||
|
2.3 Strukturierte Textfiles einlesen
|
||||||
|
|
||||||
|
<https://bscw.tbz.ch/bscw/bscw.cgi/d32029859/script2_3_Textfiles_einlesen_StrukturierteTextfiles_plusUebung.pdf>
|
||||||
|
|
||||||
|
2.4 Textfiles schreiben
|
||||||
|
|
||||||
|
<https://bscw.tbz.ch/bscw/bscw.cgi/d32029864/script2_4_Textfiles_schreiben_plusUebung.pdf>
|
||||||
|
|
||||||
|
2.5 Zufallszahlen-Datei
|
||||||
|
|
||||||
|
Schreiben Sie ein einfaches Text-File. Der Inhalt sind ganzzahlige Zufallszahlen
|
||||||
|
zwischen 0 und 10000. Pro Zeile schreiben Sie eine Zahl. Programmieren Sie eine
|
||||||
|
Einstellung (Parameter), dass Sie wahlweise z.B. 500 oder 3'000’000
|
||||||
|
Zufallszahlen-Zeilen erzeugen können.
|
||||||
|
|
||||||
|
Zeigen Sie der Lehrperson jede Übung (entweder einzeln oder mehrere Übungen
|
||||||
|
zusammen) und zeigen Sie auch diese Zufallszahlen-Datei.
|
||||||
|
|
||||||
|
Bewertung:
|
||||||
|
|
||||||
|
Aufgaben / Übungen der Lehrperson einzeln oder zusammen zeigen
|
21
m411/3/AufgabeTask05_LinkedList.md
Normal file
21
m411/3/AufgabeTask05_LinkedList.md
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
Aufgabe/Task: Nr. 05
|
||||||
|
|
||||||
|
Thema: Linked List / Verkettete Liste
|
||||||
|
|
||||||
|
Geschätzter Zeitbedarf: 30-70min pro Aufgabe
|
||||||
|
|
||||||
|
Aufgabenbeschreibung:
|
||||||
|
|
||||||
|
Zur Unterstützung und weitere Anleitung, schauen Sie sich dieses Video an.
|
||||||
|
|
||||||
|
<https://www.youtube.com/watch?v=i2v_Ve9PUCw>
|
||||||
|
|
||||||
|
Bauen Sie gemäss dieser Anleitung eine (einfache) Verlinkte Liste.
|
||||||
|
|
||||||
|
<https://bscw.tbz.ch/bscw/bscw.cgi/d32029894/script3_2_dynamicStructures_linkedList.pdf>
|
||||||
|
|
||||||
|
<https://bscw.tbz.ch/bscw/bscw.cgi/d32029899/script3_2_dynamischeStrukturen_verkListe.pdf>
|
||||||
|
|
||||||
|
Bewertung:
|
||||||
|
|
||||||
|
Keine, ist aber prüfungsrelevant
|
27
m411/3/AufgabeTask06_ArraySortStackQueue.md
Normal file
27
m411/3/AufgabeTask06_ArraySortStackQueue.md
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
Aufgabe/Task: Nr. 06
|
||||||
|
|
||||||
|
Thema: Arrays, Sort, Stack, Queue
|
||||||
|
|
||||||
|
Geschätzter Zeitbedarf: 180-240 min
|
||||||
|
|
||||||
|
Aufgabenbeschreibung:
|
||||||
|
|
||||||
|
Arrays
|
||||||
|
|
||||||
|
<https://www.youtube.com/watch?v=JH8oogtBd4g>
|
||||||
|
|
||||||
|
Stacks
|
||||||
|
|
||||||
|
<https://www.youtube.com/watch?v=wgwLdEg8728>
|
||||||
|
|
||||||
|
<https://bscw.tbz.ch/bscw/bscw.cgi/d32029874/script3_0_usingArrays.pdf>
|
||||||
|
|
||||||
|
<https://bscw.tbz.ch/bscw/bscw.cgi/d32029869/script3_0_arrays_anwenden_und_sortieren.pdf>
|
||||||
|
|
||||||
|
<https://bscw.tbz.ch/bscw/bscw.cgi/d32029884/script3_3_dynamischeStrukturen_stack.pdf>
|
||||||
|
|
||||||
|
<https://bscw.tbz.ch/bscw/bscw.cgi/d32029889/script3_4_dynamischeStrukturen_queue.pdf>
|
||||||
|
|
||||||
|
Bewertung:
|
||||||
|
|
||||||
|
Keine, ist aber prüfungsrelevant
|
24
m411/3/AufgabeTask07_BubbleSort.md
Normal file
24
m411/3/AufgabeTask07_BubbleSort.md
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
Aufgabe/Task: Nr. 07
|
||||||
|
|
||||||
|
Thema: Bubble-Sort
|
||||||
|
|
||||||
|
Geschätzter Zeitbedarf: 90-120 min
|
||||||
|
|
||||||
|
Aufgabenbeschreibung:
|
||||||
|
|
||||||
|
Bubble Sort
|
||||||
|
|
||||||
|
<https://www.youtube.com/watch?v=XMu1Kq69EhU> (5:32 min)
|
||||||
|
|
||||||
|
Bauen Sie ein Bubble-Sort-Algorithmus. Die Daten lesen Sie über eine Liste von
|
||||||
|
Nummern aus einer Text-Datei ein. Lassen Sie die Veränderungen nach jedem
|
||||||
|
Durchgang in eine Datei herausschreiben (Zahlenreihe hintereinander und Komma
|
||||||
|
separiert / Stand vorher eine Zeile, Stand nachher eine Zeile, Stand nachher
|
||||||
|
eine Zeile, …) damit man sehen kann, wie sich der Algorithmus verhält und sich
|
||||||
|
die Resultate entwickeln.
|
||||||
|
|
||||||
|
<https://bscw.tbz.ch/bscw/bscw.cgi/d32029879/script3_1_bubble_sort_exercise.pdf>
|
||||||
|
|
||||||
|
Bewertung:
|
||||||
|
|
||||||
|
Keine, ist aber prüfungsrelevant
|
129
m411/3/AufgabeTask07_BubbleSort_Aufgabe.md
Normal file
129
m411/3/AufgabeTask07_BubbleSort_Aufgabe.md
Normal file
@ -0,0 +1,129 @@
|
|||||||
|
**Der Bubblesort**
|
||||||
|
|
||||||
|
**Lernziele:**
|
||||||
|
|
||||||
|
- Sie haben das Prinzip des Bubblesort verstanden
|
||||||
|
|
||||||
|
- Sie können eine Aussage über die Effizienz des Bubblesorts machen
|
||||||
|
|
||||||
|
**1 Sortieren in Schritten**
|
||||||
|
|
||||||
|
Für die folgenden Aufgaben brauchen Sie Papierschnitzel mit den unten stehenden
|
||||||
|
Zahlen:
|
||||||
|
|
||||||
|
**51, 13, 9, 44, 18, 93, 25**
|
||||||
|
|
||||||
|
Schreiben Sie diese Zahlen auf Notizpapier auf und zerschneiden Sie es.
|
||||||
|
|
||||||
|
**1.1 Aufgabe: Sortieren nach Grösse**
|
||||||
|
|
||||||
|
Sortieren Sie die Papierschnitzel ausgehend von der obigen Reihenfolge der
|
||||||
|
Grösse nach aufsteigend, so dass die kleinste Zahl links und die grösste rechts
|
||||||
|
zu liegen kommt.
|
||||||
|
|
||||||
|
- Können Sie beschreiben, wie Sie vorgegangen sind?
|
||||||
|
|
||||||
|
**1.2 Aufgabe: nur benachbarte Schnipsel vertauschen**
|
||||||
|
|
||||||
|
Bringen Sie die Papierschnipsel wieder in die Ausgangssituation und sortieren
|
||||||
|
Sie zum zweiten Mal der Grösse nach aufsteigend. Aber: dieses Mal ist nur eine
|
||||||
|
**einzige Operation** auf den Papierschnipsel erlaubt, und zwar dürfen Sie nur
|
||||||
|
jeweils zwei benachbarte Schnipsel vertauschen.
|
||||||
|
|
||||||
|
**1.3 Aufgabe: systematisch von links nach rechts**
|
||||||
|
|
||||||
|
Bringen Sie die Papierschnipsel wieder in die Ausgangssituation und sortieren
|
||||||
|
Sie sie wieder durch Vertauschen von Nachbarn, aber wählen Sie diesmal die
|
||||||
|
Nachbarn systematisch von links nach rechts. Sie tauschen also – falls nötig –
|
||||||
|
die erste mit der zweiten Zahl, dann die zweite mit der dritten, usw. bis Sie
|
||||||
|
beim letzten Paar ganz rechts angekommen sind.
|
||||||
|
|
||||||
|
- Können Sie etwas darüber sagen, was bei einem einzelnen Durchgang passiert?
|
||||||
|
|
||||||
|
- Wann können sie aufhören und brauchen keinen weiteren Durchgang mehr?
|
||||||
|
Notieren Sie sich die Zwischenschritte.
|
||||||
|
|
||||||
|
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
|
||||||
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
||||||
|
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
|
||||||
|
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
|
||||||
|
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
|
||||||
|
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
|
||||||
|
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
|
||||||
|
|
||||||
|
**2 Definition Bubblesort-Algorithmus**
|
||||||
|
|
||||||
|
Der Bubblesort-Algorithmus sortiert eine Liste von Elementen aufsteigend, indem
|
||||||
|
er so lange von links nach rechts durch die Liste geht und benachbarte Elemente
|
||||||
|
vertauscht (falls das linke Element grösser als das rechte ist), bis ein ganzer
|
||||||
|
Durchgang durch die Liste zu keiner Änderung mehr führt.
|
||||||
|
|
||||||
|
Als Flussdiagramm:
|
||||||
|
|
||||||
|
![](media/0bf179a2c5f431b207fe5c6804bbcfab.jpg)
|
||||||
|
|
||||||
|
**2 Effizienz von Bubblesort**
|
||||||
|
|
||||||
|
**2.1 Anzahl Durchgänge**
|
||||||
|
|
||||||
|
Überlegen Sie sich, wie viele Durchgänge von links nach rechts maximal nötig
|
||||||
|
sind, um eine Liste mit *n* Elementen zu sortieren. Sortieren Sie folgende Liste
|
||||||
|
mit dem Bubblesort-Algorithmus und schreiben Sie sämtliche Zwischenschritte auf:
|
||||||
|
|
||||||
|
97 15 33 28 25 11 73
|
||||||
|
|
||||||
|
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
|
||||||
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
||||||
|
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
|
||||||
|
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
|
||||||
|
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
|
||||||
|
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
|
||||||
|
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
|
||||||
|
|
||||||
|
Wie Sie vermutlich gemerkt haben, genügen *n* Durchgänge. Mit jedem Durchgang
|
||||||
|
landet mindestens eine der Zahlen an seinem definitivem Platz (es genügen sogar
|
||||||
|
*n-1* Durchgänge, weil die letzte Zahl keinen Nachbar mehr hat, mit dem sie
|
||||||
|
vertauscht werden könnte).
|
||||||
|
|
||||||
|
**2.2 Anzahl Vergleichsoperationen**
|
||||||
|
|
||||||
|
In einer Liste mit *n* Zahlen gibt es *n*-1 Paare von benachbarten Zahlen, die
|
||||||
|
bei einem Durchgang verglichen werden müssen. Und wir haben höchstens *n*
|
||||||
|
Durchgänge. Somit sind *n*(*n*-1) Vergleichsoperationen maximal nötig.
|
||||||
|
|
||||||
|
Wir können somit sagen, dass es ungefähr *n2* Vergleichsoperationen für eine
|
||||||
|
Liste mit n Elementen gibt.
|
||||||
|
|
||||||
|
**2.3 Aufwand im besten und im schlechtesten Fall**
|
||||||
|
|
||||||
|
Wenn die Liste bereits sortiert ist, vergleicht der Algorithmus alle *n-1*
|
||||||
|
benachbarten Zahlenpaare einmal und stellt fest, dass es nichts zu tun gibt.
|
||||||
|
Damit ist er fertig und es werden keine Zahlen vertauscht. Das ist der beste und
|
||||||
|
schnellste Fall und benötigt *n-1* Vergleiche und 0 Vertauschungen.
|
||||||
|
|
||||||
|
**2.4 Aufgabe: der schlechteste Fall**
|
||||||
|
|
||||||
|
Überlegen Sie sich die Effizienz im schlechtesten Fall (d.h. wenn eine Liste
|
||||||
|
absteigend sortiert ist und aufsteigend sortiert werden soll).
|
||||||
|
|
||||||
|
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
|
||||||
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
||||||
|
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
|
||||||
|
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
|
||||||
|
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
|
||||||
|
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
|
||||||
|
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
|
||||||
|
|
||||||
|
Lösung:
|
||||||
|
|
||||||
|
Die grösste Zahl steht zu Beginn ganz links und wird im ersten Durchgang in n-1
|
||||||
|
Vertauschungen ans rechte Ende der Liste gebracht. Die übrigen Elemente der
|
||||||
|
Liste wandern einen Platz nach links. Jetzt liegt die zweitgrösste Zahl ganz
|
||||||
|
links und wird im zweiten Durchgang in n-2 Vertauschungen ans rechte Ende der
|
||||||
|
Liste links der grössten Zahl verschoben. Usw.
|
||||||
|
|
||||||
|
Das heisst, wir haben:
|
||||||
|
|
||||||
|
*(n-1) + (n-2) + …. + 1 = n(n-1)/2*
|
||||||
|
|
||||||
|
Quelle: ETH-Unterlagen, Stand August 2015
|
@ -2,20 +2,23 @@ Aufgabe/Task: Nr. 09
|
|||||||
|
|
||||||
Thema: HashMaps in Java
|
Thema: HashMaps in Java
|
||||||
|
|
||||||
Geschätzter Zeitbedarf: 60 min
|
Geschätzter Zeitbedarf: 60-120 min
|
||||||
|
|
||||||
Aufgabenbeschreibung:
|
Aufgabenbeschreibung:
|
||||||
|
|
||||||
Schauen Sie sich zwei der angebotenen Videos über Java HashMap an
|
Schauen Sie sich zwei der angebotenen Videos über Java HashMap an
|
||||||
|
|
||||||
<https://bscw.tbz.ch/bscw/bscw.cgi/32213665>
|
- [../docs/Videos-Tutorials-Anleitungen](Videos-Tutorials-Anleitungen)
|
||||||
<https://bscw.tbz.ch/bscw/bscw.cgi/d32230337/HashMapUndRekursion.pdf>
|
- <https://bscw.tbz.ch/bscw/bscw.cgi/32213665>
|
||||||
|
- [./HashMapUndRekursion.pdf](HashMapUndRekursion.pdf)
|
||||||
|
- [./HashMapUndRekursion.pptx](HashMapUndRekursion.pptx)
|
||||||
|
|
||||||
|
|
||||||
|
-<https://www.youtube.com/watch?v=70qy6_gw1Hc>
|
||||||
|
|
||||||
<https://www.youtube.com/watch?v=70qy6_gw1Hc>
|
|
||||||
|
|
||||||
.. und bauen Sie in Java eine eigene HashMap nach und geben Sie den Java-Code im
|
.. und bauen Sie in Java eine eigene HashMap nach und geben Sie den Java-Code im
|
||||||
Teams ab.
|
Teams ab oder zeigen Sie es der Lehrperson.
|
||||||
|
|
||||||
Bewertung:
|
|
||||||
|
|
||||||
Keine, ist aber prüfungsrelevant
|
Bewertung: Keine, ist aber prüfungsrelevant
|
||||||
|
@ -1,12 +1,13 @@
|
|||||||
Aufgabe/Task: Nr. 10
|
Aufgabe/Task: Nr. 13
|
||||||
|
|
||||||
Thema: Data-Files-Structures
|
Thema: Data-Files-Structures, XML, JSON
|
||||||
XML & JSON
|
|
||||||
|
|
||||||
Geschätzter Zeitbedarf: min
|
|
||||||
|
Geschätzter Zeitbedarf: 120 min
|
||||||
|
|
||||||
Aufgabenbeschreibung:
|
Aufgabenbeschreibung:
|
||||||
|
Bilden Sie sich über den Java-Syntax bezüglich xml und json und probieren Sie es aus.
|
||||||
|
Gehen Sie dem Dokument [script6_weitereDatenstrukturen_XML_JSON.pdf](./script6_weitereDatenstrukturen_XML_JSON.pdf) nach.
|
||||||
|
|
||||||
Bewertung:
|
|
||||||
|
|
||||||
Keine, ist aber prüfungsrelevant
|
Bewertung: Keine.
|
||||||
|
@ -13,6 +13,6 @@ Erwartet wird etwa eine A4-Seite (in 11 Pt Schrift)
|
|||||||
|
|
||||||
<https://bscw.tbz.ch/bscw/bscw.cgi/31933102>
|
<https://bscw.tbz.ch/bscw/bscw.cgi/31933102>
|
||||||
|
|
||||||
Bewertung:
|
|
||||||
|
|
||||||
Keine, ist aber prüfungsrelevant
|
|
||||||
|
Bewertung: Keine
|
||||||
|
Loading…
Reference in New Issue
Block a user