Emnebeskrivelse PGR206
Data Structures and Algorithms
2023 Høst
Emnekode
PGR206Versjon
1Engelsk emnenavn
Data Structures and Algorithmsstudiepoeng
7.5Studienivå
BachelornivåSemester
3rd semester
Antall semester
1Emneansvarlig
Rashmi GuptaVedtak
The course description was approved by The Education Committee on the 24.04.2023 UU/EIT-case no. 27/23.
Innledning
The course will provide insight into algorithms and data structures that are central to the work of implementing and designing effective computer systems. Emphasis is placed on asymptotic analysis of worst-case scenarios, as well as central algorithms and data structures related to search and sorting. The course also deals with graph algorithms, optimization algorithms and data-compression algorithms.
Læringsutbytte
Knowledge
The student...
- can explain the basic data structures and algorithms for sorting, searching and hashing
- knows the mathematical conceptsunderlying the design and analysis of algorithms appropriate for a given data science problem
- knows the mathematical concepts needed to analyse the behaviour of algorithms in terms of computing time and memory use
Skills
The student...
- can select appropriate date structures and program efficient algorithms for data science tasks such as sorting, searching and hashing
- can analyse mathematically the complexity of algorithms
- can analyse empirically the behaviour of algorithms in terms of computing time and memory use
- can transfer learnings from the course to new data science problems in terms of selection of appropriate data structures and algorithms
- can use python or another generic programming language to implement the algorithms
General competence
The student...
- can discuss data structures and algorithms for data science with others
- can differentiate the efficiency of programs in terms of their data structures and algorithms
- can apply the knowledge and skills of data structures and algorithms in various data science domains
- can critically reflect on the tradeoffs in the design and implementation of data structures and algorithm
Emnet inngår i
Bachelor in Data Science
Læringsaktiviteter
The teaching takes place as joint lectures and self-work under the supervision of the lecturer and student supervisor.
Anbefalt tidsbruk
Participation in teaching and exercises) - 48 hours
Self-study - 128 hours
Completion and preparation for the exam - 24 hours
Recommended use of time in total - 200 hours
Arbeidsverktøy
A PC, laptop, and any Python IDE (eg, PyCharm or Jupyter Notebook).
Obligatorisk aktivitet
Verifiable coursework requirements: one or more in-class assignments that must be collectively approved
Individual qualification: G/IG (approved/not approved)
Execution: individual
Verifiable (right of appeal): yes
Coursework requirements are to be handed in or conducted in accordance with information given by the lecturer and carried out within the duration of the course, as well as registered as approved/not approved at least two weeks before the exam/exam period.
Approved coursework requirements grant students permission to take exams. Unapproved coursework requirements result in the student’s withdrawal from the exam.
Eksamen
Exam: Semester assignment in group with oral adjustment
Duration: 4 weeks
Grading scale: The Norwegian grading system uses the graded scale A - F, where A is the best grade, E is the lowest pass grade and F is fail
Weighting: 100% of the overall grade
Support materials: All support materials are allowed
Kontinuasjon
Re-sit coursework requirements: submit one or more assignments
Re-sit exam: 24-hour individual written home examination with a new assignment