Datalogi C, efterår 2004: Datastrukturer og Algoritmer

ved Henning Christiansen

Forelæsninger finder sted tirsdag 9.00-12.00 i bygning 43, Teorirum 43.2.29.

Øvelser finder sted i bygning 42, Datastue 1 42.1.37.

Læs den officielle kursusbeskrivelse, incl. om eksamensform her.

Kursusplanen revideres løbende som kurset skrider frem med opgaver og evt. justeringer.

Overheads og Powerpoint o.lignende vil på vidt muligt bliver lagt ud på denne side, så de kan hentes som pdf.

Afleveringsopgaver: I modsætning til tidligere annonceret, stilles der kun 4 opgaver, og mindst tre skal vsære godkendt. Se Aktuel status 29/11-2004 kl. 11.40 for godkendte opgaver.

DatoForelæsningsemneØvelser
14/9-2004
9.00-12.00
Objekter, klasser og nedarvning:
Indpakning af datastrukturer og algoritmer,
gen(brug) og beskyttelse,
Dele af kap. 1-4. (fortsættes næste gang)
Dagens OHer som pdf
17/9-2004
13.00-16.00
Opgaver som pdf;
Benytter følgende filer: EasyFile.java, duckling, stopwords. Beskrivelse af en løsning (pdf)
21/9-2004
9.00-12.00
Objekter, klasser og nedarvning (fortsat)
Kap. 4.
Dagens OHer som pdf.
Løsning på opgaven fra sidst.
Opgave til hjemmebrug her.
24/9-2004 INGEN ØVELSER: ÅRSFEST
28/9-2004
9.00-12.00
Tid- og pladsforbrug. Store-O-notation, eksempler
Kapitel 5.
Dagens OHer som pdf.
Find løsning til opg. fra sidst her
(bliver kun gennemgået hvis I beder om det).
1/10-2004
13.00-16.00
Opgaver som pdf, incl. afleveringsopgave
5/10-2004
9.00-12.00
Java, nedarvning, dataabstraktion, Java Platform, konventioner og Collections API m.v.
Kapitel 6 (m. reference til kap. 1-4)
Forelæsningsnotat som html m. links til online Java-dokumentation
8/10-2004
13.00-16.00
Opgave til stoffet fra 5/10 som pdf.
12/10-2004
9.00-12.00
Om rekursion og design af algoritmer
Dele af kap. 7 (ikke 7.4 og 7.7)
Se læsevejledning!
Dagens OHer som pdf
15/10-2004
13.00-16.00
Opgave til stoffet fra 14/10 som pdf.
NB: Der henvises til bogens byttepengeprogram, som du kan hente her: http://www.cs.fiu.edu/~weiss/dsj2/code/MakeChange.java.
NB: Denne øvelsesgang varetages af Davide Martinenghi
19/10-2004
9.00-12.00
Sortering: En klassisk lærestykke
Kap. 8 (detaljerede beviser ikke eksamenspensum)
Dagens OHer som pdf
22/10-2004
13.00-16.00
Opgaver til stoffet fra 19/10 som pdf.
OBS: Opgave 3 i sættet er afleveringsopgave med frist torsdag 4 november.
NB: Der henvises til bogens sorteringsprogram, incl. quicksort, som du kan hente her: http://www.cs.fiu.edu/~weiss/dsj2/code/Sort.java.
NB: Normale øvelser indtil 15.00. Fra 15.15 er der tiltrædelsesforelæsning i Biografen, hus 41, med efterfølgende reception, se annoncering.
26/10-2004
9.00-12.00
Grafalgoritmer
Kap. 14 minus 14.4
Dagens OHer som pdf (se evt. et foredrag som har været brugt på RUCs NATDag.
Hvis problemer med afleveringsopgaven, kan vi diskutere dem her.
29/10-2004
13.00-16.00
Opgaver til stoffet fra 16/10 som pdf.
NB: Der henvises til bogens grafalgoritmeprogram, som kan hentes her: http://www.cs.fiu.edu/~weiss/dsj2/code/Graph.java.
NB: For at køre den, skal du også have andre filer i samme katalog: Christian Bohr-Halling (Datalogi C-holdet 2003) har været så venlig at samle dem (og rette små fejl i dem, så det hele kan compileres): GrafAlleFiler.zip.
2/11-2004
9.00-12.00
Stakke, køer, hægtede lister
Kap. 16, 17 og 11.1 (og for specielt interesserede: kap. 21)
Dagens OHer som pdf
5/11-2004
13.00-16.00
Opgaver til stoffet fra 2/11 som pdf.
NB: Indeholder afleveringsopgave med frist 16 november.
9/11-2004
9.00-12.00
Træer, specielt søgetræer til
repræsentation af mængder og afbildninger
Kap. 18, minus de dele af 18.2 som handler om Huffman-koder og om metoden merge.
Kap. 19, minus 19.2 og 19.3. Der lægges vægt på 19.4. Resten af kapitlet som baggrundsorientering; spring over Java-detaljerne.
Dagens OHer som pdf
Kildetekster til program brugt i forel.: ExpressionTree.java, PlusTree.java, TimesTree.java, NumberTree.java, TestExpressionTree.java.
12/11-2004
13.00-16.00
Opgaver til stoffet fra 9/11 som pdf.
Der henvises til følgende kildetekst: BinTree.java;
16/11-2004
9.00-12.00
Hashing
Kap. 20.
Spring over diverse matematiske detaljer.
Dagens OHer som pdf.
Desuden ser vi på hvad der tilbydes af java.util.HashMap. og java/.util.TreeMap.
Sidste afleveringsgopgave stilles i tilknytning hertil.
OBS: Tilføjet 17 nov 2004: Java-filer som implementerer "set types" a la Pascal som generel klasse, SmallSets.java og Fisk.java.
19/11-2004
13.00-16.00
Opgaver til stoffet fra 16/11 som pdf.
NB: Indeholder den sidste afleveringsopgave med frist 29/11 kl. 8.00.
23/11-2004
9.00-12.00
Noget om tilstandsmaskiner og sproggenkendelse:
Anvendelser i Datalogi og Bioinformatik.
NYT-NYT: Læsestof her!!
Dagens OHer som pdf.
26/11-2004
13.00-16.00
Opgaver til stoffet fra 23/11 som pdf
30/11-2004
9.00-12.00
Bl.a.: Evaluering, afslutning, mulige projektforslag.
Nærmere oplysninger snarest.


Litteratur:

Mark Allen Weiss: Data Structures & Problem Solving using JAVA, second edition. Addison-Wesley 2002.


Links: Rettelsesliste, bogens programeksempler, og forfatterens hjemmeside med mange gode links.


Sidst rettet 29. november 2004, Henning Christiansen