Hoppa till huvudinnehållet

DD1320 Tillämpad datalogi 6,0 hp

En grundläggande kurs i datalogi.

Välj termin och kursomgång

Välj termin och kursomgång för att se information från rätt kursplan och kursomgång.

Rubriker med innehåll från kursplan DD1320 (HT 2021–) är markerade med en asterisk ( )

Innehåll och lärandemål

Kursinnehåll

I den här kursen bygger studenten på sina kunskaper om algoritmer, datastrukturer och programmering. Programspråk i kursen är Python.

Algoritmer och datastrukturer: En systematisk genomgång av begreppen abstrakta datatyper, stackar, köer, listor, träd, sökning, sortering och rekursion utgående från de kunskaper studenterna förvärvat i kursen i Programmeringsteknik. Hashning. Prioritetsköer. Sökträd. Problemträd. Textsökning. Enkel syntaxanalys. Algoritmanalys. Kryptering.

Programmering: Programkvalitet. Abstraktion. Modularisering. Testning. Systemanrop. Standardmoduler.

Lärandemål

Efter godkänd kurs ska studenten kunna

  • systematiskt testa program för att upptäcka fel
  • använda abstraktion som ett verktyg för att förenkla programmeringen
  • välja lämplig algoritm till ett givet problem
  • jämföra algoritmer med avseende på tids- och minnesåtgång
  • beskriva olika algoritmer för sökning och sortering och deras egenskaper
  • formulera och implementera rekursiva algoritmer
  • skriva en liten BNF-syntax (mindre än 10 regler) för ett formellt språk och skriva ett program som undersöker om ett uttryck följer en BNF-syntax
  • modellera problem som sökproblem och implementera algoritmer för breddenförstsökning, djupetförstsökning och bästaförstsökning
  • beskriva grundläggande komprimeringsalgoritmer och vid vilka typer av komprimering de används
  • konstruera en automat för textsökning och beskriva hur den fungerar
  • implementera stackar och köer samt använda dessa
  • implementera insättnings-, genomgångs- och sökoperationer i binära sökträd och allmänna träd samt använda dessa
  • implementera hashtabeller och hashfunktioner samt använda dessa
  • använda prioritetsköer
  • använda enkla krypteringsmetoder, och förklara principerna för assymetrisk kryptering
  • identifiera problem där datastrukturerna ovan är användbara och konstruera enkla algoritmer med dessa

i syfte att

  • bli bra på att lösa problem med programmering
  • kunna använda datalogiska metoder i tillämpningsprojekt
  • få tillräckliga förkunskaper för att kunna läsa fortsättningskurser i datalogi.

Kursupplägg

Ingen information tillagd

Kurslitteratur och förberedelser

Särskild behörighet

Kunskaper och färdigheter i grundläggande programmering, 6 hp, motsvarande slutförd kurs DD1310/DD1311/DD1312/DD1314/DD1315/DD1316/DD1318/DD1331/DD100N/ID1018.

Aktivt deltagande i kursomgång vars slutexamination ännu inte är Ladokrapporterad jämställs med slutförd kurs.

Den som är registrerad anses vara aktivt deltagande.

Med slutexamination avses både ordinarie examination och det första omexaminationstillfället.

Rekommenderade förkunskaper

Ingen information tillagd

Utrustning

Ingen information tillagd

Kurslitteratur

Ingen information tillagd

Examination och slutförande

När kurs inte längre ges har student möjlighet att examineras under ytterligare två läsår.

Betygsskala

A, B, C, D, E, FX, F

Examination

  • KONT - Kontrollskrivningar, 3,0 hp, betygsskala: A, B, C, D, E, FX, F
  • LABD - Programmeringsuppgifter, 3,0 hp, betygsskala: A, B, C, D, E, FX, F

Examinator beslutar, baserat på rekommendation från KTH:s handläggare av stöd till studenter med funktionsnedsättning, om eventuell anpassad examination för studenter med dokumenterad, varaktig funktionsnedsättning.

Examinator får medge annan examinationsform vid omexamination av enstaka studenter.

För högre betyg på KONT görs muntlig examination.

Möjlighet till komplettering

Ingen information tillagd

Möjlighet till plussning

Endast TEN1 kan plussas.

Examinator

Etiskt förhållningssätt

  • Vid grupparbete har alla i gruppen ansvar för gruppens arbete.
  • Vid examination ska varje student ärligt redovisa hjälp som erhållits och källor som använts.
  • Vid muntlig examination ska varje student kunna redogöra för hela uppgiften och hela lösningen.

Ytterligare information

Kurswebb

Ytterligare information om kursen kan hittas på kurswebben via länken nedan. Information på kurswebben kommer framöver flyttas till denna sida.

Kurswebb DD1320

Ges av

Huvudområde

Informationsteknik, Teknik

Utbildningsnivå

Grundnivå

Påbyggnad

Fortsättningskurser är bland annat DD2350/DD2352 Algoritmer, datastrukturer och komplexitet, DD1418 Språkteknologi, DD1334 Databasteknik, DD1420/DD2421 Maskininlärning, DH2323 Datorgrafik med interaktion. Dessutom DD1380 Javaprogrammering för Pythonprogrammerare följd av DD1385 Programutvecklingsteknik eller DD1389 Internetprogrammering.

Kontaktperson

Linda Kann, tel:790 9276, e-post: lk@kth.se

Övergångsbestämmelser

TEN1 har ersatts av KONT.

Övrig information

Den som läst Numeriska metoder och grundläggande programmering, 9 hp, ska läsa DD1321 istället för DD1320.

Endast en av följande kurser får räknas med i examen: DD1320, DD1321, DD1325, DD1327, DD1338, DD1339, DD1340, DD1341, DD1343, DD1344, DD1345, DD2325, EL2310, HI1201, ID1020, ID1021.

I denna kurs tillämpas EECS hederskodex, se:
http://www.kth.se/eecs/utbildning/hederskodex