• kth.se
  • Studentwebben
  • Intranät
  • kth.se
  • Studentwebben
  • Intranät
Logga in
DD1320/DD1325HT211
C-labben
Hoppa över till innehåll
Översikt
  • Logga in
  • Översikt
  • Kalender
  • Inkorg
  • Historik
  • Hjälp
Stäng
  • Min översikt
  • DD1320/DD1325HT211
  • Uppgifter
  • C-labben
  • Startsida
  • Kursöversikt
  • Moduler
  • Uppgifter
  • Course Evaluation

C-labben

  • Inlämningsdatum Inget inlämningsdatum
  • Poäng 10
  • Lämnar in en filuppladdning
  • Filtyper pdf

Laboration för betyg C

Endast för den som redovisat alla E-labbar i tid. Denna labb är individuell och får inte göras i grupp, eller i samarbete med någon annan. Läs hederskodex innan du börjar med uppgiften.

Ett krav för betyg C är att man ska kunna jämföra algoritmer och datastrukturer och bedöma dessas lämplighet för ett givet problem. 

Uppgift

I denna labb ska du titta på några nya datastrukturer i Python. Din uppgift är att göra en jämförelse mellan två olika datastrukturer med avseende på två relevanta aspekter.

Jämförelsen måste innehålla

  • En beskrivning av ett eget konkret exempel där datastrukturerna skulle gå att använda,
  • några rader kod som visar hur bägge datastrukturerna fungerar,
  • en jämförelse av de två datastrukturerna med avseende på två relevanta aspekter,
  • ett resonemang om de två olika datastrukturernas styrkor respektive svagheter.

Du får själv välja vilka två aspekter du vill jämföra. Du måste motivera varför dessa aspekter är relevanta för ditt exempel.

Du behöver inte skriva ett fullständigt program för ditt exempel, det räcker att du demonstrerar datastrukturerna med ett par rader kod.

Jämförelsen måste innehålla både egna experiment och teoretiska resonemang. Du får använda dig av både programkod och data från andra källor. Ange alltid dina källor, både när det gäller programkod och teori.

Vilken uppgift du ska göra ges av följande (där hash är din egen hash-funktion från labb 7):

     uppgiftsnr = hash(förnamn+efternamn) % 8 + 1

Exempel:     hash("AnnaModise")%8+1 = 7, så Anna ska göra uppgift 7 nedan.

  • Uppgift 1: Jämför pythons deque med din implementation av LinkedQueue (från labb 2).
  • Uppgift 2: Jämför heapq med din egen implementation av LinkedQueue (från labb 2).
  • Uppgift 3: Jämför OrderedDict med din egen implementation av LinkedQueue (från labb 2).
  • Uppgift 4: Jämför OrderedDict med din egen implementation av Bintree (från labb 3).
  • Uppgift 5: Jämför defaultdict Links to an external site. med din egen implementation av Bintree (från labb 3).
  • Uppgift 6: Jämför Counter med din egen implementation av Hashtabell (från labb 7).
  • Uppgift 7: Jämför OrderedDict din egen implementation av Hashtabell (från labb 7).
  • Uppgift 8: Jämför defaultdict Links to an external site. med din egen implementation av Hashtabell (från labb 7).

Struktur för rapporten

Du ska skriva en kort rapport (max tre sidor + appendix) där du redogör för dina resultat och hur du kom fram till dom. Rapporten ska lämnas in som en PDF-fil och den ska följa nedanstående struktur. 

Formalia

Skriv ditt namn, kth-mail och födelsedag. När du använder material från någon källa (inklusive de som länkas till ovan), var noga med att lämna referens.

Sammanfattning

Skriv en kort sammanfattning av dina resultat. Skriv detta avsnitt som det sista du gör men lägg sammanfattningen först i rapporten. Ha med åtminstone ett sifferresultat i sammanfattningen.

Uppgiftsbeskrivning

Beskriv vad uppgiften går ut på. Det är tillåtet att klippa och klistra från uppgiftsformuleringen du fått. 

Metod

Beskriv vad du har gjort och hur du har gjort dina mätningar. Motivera dina val. Ta med relevanta kodavsnitt om du tycker det främjar rapporten.

Resultat

Visa resultat med numrerade tabeller och grafer. Graferna ska ha enheter på axlarna och en figurtext.

Analys

Här skriver du vad du kommer fram till. Hänvisa till dina egna figurer i resultatavsnittet. Du kan också föra teoretiska resonemang här om du vill.

OBS! Det är datalogin vi bedömer - inte språket. Det går utmärkt att skriva informellt, t ex: "Jag provkörde med...och du kan se resultatet i tabell 2"

 

Redovisning

Rapporten lämnas in i Canvas senast 1 dec kl 18:00 och redovisas muntligt (på en bokad redovisningstid).

Lämna in rapport

  1. Skriv din rapport (enligt instruktionerna ovan), spara som pdf, och lämna in här i Canvas.
  2. Vänta på feedback i Canvas...
  3. ...och fixa ev påpekanden du får av läraren.
  4. När du fått klartecken på din inlämning är det dags att boka tid för muntlig redovisning på vanliga bokningssidan.

Muntlig redovisning

Vid den muntliga redovisningen ska du kunna

  • Beskriva översiktligt hur datastrukturerna fungerar, och hur de kan användas.
  • Motivera de val du gjort när du lagt upp jämförelserna mellan funktionerna.
  • Analysera resultaten.

När du är godkänd på C-labben får du tillgång till A-labben.

Denna uppgift kan bara redovisas fram till och med 3 december 2021 och kan inte kompletteras eller plussas efter det.

0
Inkludera en beskrivning
Ytterligare kommentarer:
Maxresultat för gradering till > poäng
Inkludera en bedömningstitel

Matris

Hitta matris
Inkludera en titel
Hitta en matris
Titel
Du har redan bedömt studenter med den här matrisen. Större ändringar kan påverka resultaten för deras uppgifter.
 
 
 
 
 
 
 
     
Det går inte att ändra en matris efter att du börjat använda den.  
Titel
Kriterier Bedömningar Poäng
Det här kriteriet är länkat till ett lärandemål Beskrivning av kriterium
tröskel: 5 poäng
Redigera beskrivning av kriterium Ta bort kriterium rad
5 till >0 poäng Full poäng blank
0 till >0 poäng Inga poäng blank_2
Det här området kommer användas av utvärderaren för kommentarer relaterade till det här kriteriet.
poäng
  / 5 poäng
--
Ytterligare kommentarer
Det här kriteriet är länkat till ett lärandemål Beskrivning av kriterium
tröskel: 5 poäng
Redigera beskrivning av kriterium Ta bort kriterium rad
5 till >0 poäng Full poäng blank
0 till >0 poäng Inga poäng blank_2
Det här området kommer användas av utvärderaren för kommentarer relaterade till det här kriteriet.
poäng
  / 5 poäng
--
Ytterligare kommentarer
Poängsumma: 5 av 5
Föregående
Nästa
Föregående modul:
Munta
A-labben