Datastrukturer+Algoritmer (Datalogi OB) og Datalogi C (NatBas)

ved Henning Christiansen

De to kurser deler for en stor dels vedkommende forelæsninger og her er en samlet plan for forelæsninger og øvelser.

Hjælpelærer for Datalogi C: Lars Mogensen; Lars's side om afleveringsopgaver og øvelser på Datalogi C

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

NB: Nogen af de html-filer, som er refereret nedenfor er produceret direkte fra Word wed "save as web page"; tag tilsvarende pdf-fil hvis det ser mærkeligt ud.

Dato EmneØvelser: DsAlgØvelser: DatCLokale
2/9-2002
14.40-15.00
DsAlg 0 Kursuspræsentation OB -- Teorirum 43.2
3/9-2002
9.30-12.00
DsAlg 1 Objekter, klasser og nedarvning:
Indpakning af datastrukturer og algoritmer,
gen(brug) og beskyttelse,
Dele af kap. 1-4. (fortsættes næste gang)
Overheads som pdf
Ingen øvelser - Møderum 42.1
5/9-2002
13.00-14.00
DatC 0 Kursuspræsentation NatBasis-- Teorirum 45.2
10/9-2002
9.30-12.00
DsAlg 2 Objekter, klasser og nedarvning (fortsat)
Kap. 4.
Overheads som pdf
Opgave som pdf, html
Datafiler: duckling, stopwords
Løsning som html og pdf.
Filer: Word.java, Segment.java, SegmentCount.java.
- Teorirum 8.2
17/9-2002
9.30-12.00
DsAlg 3DatC 1 Introduktion til algoritmer og datastrukturer;
Tid- og pladsforbrug. Store-O-notation, eksempler
Kapitel 5
Overheads som pdf (OBS: rettet efter forel.)
Ikke øvelser
(Projektbørs)
men se på flg. opgaver pdf, html
Ikke øvelser
(Årsfest)
men se på flg. opgaver pdf, html
Teorirum 8.2
24/9-2002
9.30-12.00
DsAlg 4 DatC 2 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
Opgaver som html og pdf Opgaver som html og pdf Teorirum 8.2
1/10-2002
9.30-12.00
DsAlg 5DatC 3 Om rekursion og design af algoritmer
Dele af kap. 7 (ikke 7.4 og 7.7)
Se læsevejledning!
Overheads som pdf og html
Opgaver som html og pdf Opgaver som html og pdf Teorirum 8.2
8/10-2002
9.30-12.00
DsAlg 6DatC 4 Sortering: En klassisk lærestykke
Kap. 8 (detaljerede beviser ikke eksamenspensum)
Overheads som pdf og html
Kildetekst til program brugt i forel.: QSort.java NB: fejl rettet 9. oktober!
Opgaver som html og pdfOpgaver som html og pdf Teorirum 8.2
15/10-2002
9.30-12.00
DsAlg 7DatC 5 Grafalgoritmer
Kap. 14 minus 14.4
Overheads som pdf og html
Opgaver som html og pdf Opgaver som html og pdf Teorirum 8.2
22/10-2002
9.30-12.00
DsAlg 8DatC 6 Stakke, køer, hægtede lister
Kap. 16, 17 og 11.1
Overheads som pdf
Opgaver som html og pdfOpgaver som html og pdf Teorirum 8.2
29/10-2002
9.30-12.00
DsAlg 9DatC 7 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.
Overheads som pdf og html
Kildetekster til program brugt i forel.: ExpressionTree.java, PlusTree.java, TimesTree.java, NumberTree.java, TestExpressionTree.java.
Opgave som pdf.
Filerne i følgende katalog skal benyttes: draw_tree_files.
Opgave som pdf.
Filerne i følgende katalog skal benyttes: draw_tree_files.
Teorirum 8.2
5/11-2002
9.30-12.00
DsAlg - DatC - Ingen forelæsning (HC til konference)
Det forventes man bruger den ekstra tid på opgaven stille i forbindelse med forelæsningen i den foregående uge (afleveringsopgave for DatC'erne)
Ingen øvelsesgang.Arbejde med omtalte opgave og evt. gamle opgaver -
12/11-2002
9.30-12.00
DsAlg 10DatC 8 Hashing
Kap. 20.
Spring over diverse matematiske detaljer.
Overheads som pdf
Opgaver som pdf
Filer som skal benyttes i opgaven: Iterator.java, Collection.java, AbstractCollection.java, Set.java, HashSet.java, ReadFile.java, HashTest.java, HashTest1.java, ugly.
Opgaver som pdf
Filer som skal benyttes i opgaven: Iterator.java, Collection.java, AbstractCollection.java, Set.java, HashSet.java, ReadFile.java, HashTest.java, HashTest1.java, ugly.
Teorirum 8.2
19/11-2002
9.30-12.00
DsAlg 11DatC 9 Prioritetskører
Eksempel på anvendelse: Simulering.
Kap. 21 minus 21.6. Kap. 13 minus 13.1.
Overheads som pdf
Opgaver som pdf.
Afslutning og evaluering
Opgaver som pdf. Teorirum 45.2
26/11-2002
9.30-12.00
DatC 10 Eksempel på en helt andet slags programmeringssprog: Prolog. I
Bratko, kap. 1-2.
Overheads til BEGGE forelæsninger som pdf; se et par detaljer her.
- Opgaver som pdf.
Eksempelprogrammer brugt i forelæsningerne: family, predecessor, kredsloeb, vertihori, diverse.
OBS-OBS: Kort vejledning om brug af SICStus prolog
Teorirum 43.2
3/12-2002
9.30-12.00
DatC 11 Eksempel på en helt andet slags programmeringssprog: Prolog. II
Bratko. kap. 3, 5.
Overheads; se forrige foleæsning.
- Opgaver som pdf. Teorirum 43.2
7/1-2003
9.30-12.00
DatC 12 Afslutning og evaluering
Mulige datalogiske projekter på NatBas
-- Måske skriftlige forslag i start januar her.
--Teorirum 43.2
7/1-2003
13.00-15.00
DsAlg Repetition Se evt. gamle eksamensopgaver fra tidligere kurser, se links nederst på denne side.
NB: Det er ikke samme kursus og ikke samme underviser som har lavet disse opgave, men det kan give indikation om ca.-niveauet.
-Teorirum 43.2
10/1-2001
10.00-12.00
DsAlg Skriftlig Eksamen--Teorirum 43.2

Om lokale til øvelser:
Mht. Øvelser er flg. reserveret:
DsAlg-øvelser, tirsdage eftermiddage: Møderum 42.1 + Netværksted (Usability lab) 43.2
Dat-C øvelser, fredage eftermiddage: Møderum 42.1 + Datastue 42.1.


Litteratur:

Mark Allen Weiss: Data Structures & Problem Solving using JAVA, second edition. Addison-Wesley 2002.
Ivan Bratko: Prolog programming for artificial intelligence. Third edition, Addison-Wesley, 2001. (kun udvalgte dele; Second edition fra 1990 kan også bruges).

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


Sidst rettet 4. december 2002, Henning Christiansen