lu.se

Datavetenskap

Lunds Tekniska Högskola

Denna sida på svenska This page in English

Inlämningsuppgift

Uppgiften

En programmeringuppgift skall göras i C++. Uppgiften skall lösas i grupp om 2 personer och lämnas in gemensamt av varje grupp. I år finns två alternativ till uppgift. Ni ska välja och lösa en av uppgifterna nedan. 

Uppgiften ska vara inlämnad  7:e januari 2020.

 

 

Dispens för att lämna in uppgiften senare än ovan angiven dag kan beviljas om det finns starka skäl. Sådan dispens måste sökas hos kursansvarig i rimlig tid före sista inlämningsdag.

Uppgiftsalternativ

Containers, iteratorer och templates

Uppgiften handlar om att skapa en abstraktion som gör det möjligt att effektivt konkatenera containers utan att faktiskt kopiera några element.

Uppgiften ger främst träning på templates samt iteratorer och datastrukturer.

Uppgiften finns här: inl-concat.pdf

Kortaste vägen i en graf: Dijkstras algoritm

Uppgiften handlar om att implementera klasser för att beskriva en graf samt att implementera Dijkstras algorigm för att hitta kortaste vägen mellan noder i grafen.

Uppgiften ger träning på att implementera klasser och algoritmer enligt en given specifikation och att läsa från fil samt använda standardbibliotekets datastrukturer och algoritmer.

Uppgiften finns här: inl-dijkstra.pdf , exempel på testfall finns i dijkstra-test.tar.gz och en exempel-graf finns i graf.txt 

 

Errata

Här listas fel eller oklarheter som hittats i uppgiftstexten. Om du hämtar senaste versionen från denna sida är nedanstående fel åtgärdade.

  • I exemplet på sidan 3 var två variabelnamn fel:

står: first5, läs: first7                                                                                        

står: res2, läs: result  

  • Förtydligande att konkatenering av godtyckliga containers ska stödjas, men att inskränkningen att bara stöda två likadana containers är tillåten.
  • Förtydligande att funktionaliteten i både InputIterator (för läsning) och OutputIterator (för skrivning) ska implementeras.
  • Lagt till ett avsnitt som sammanfattar uppgiften och kraven på lösningen