0% found this document useful (0 votes)
11 views3 pages

Programming and Data Structures Syllabus

Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views3 pages

Programming and Data Structures Syllabus

Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Dnr: LNU-2024/669

Course syllabus

Faculty of Technology
Department of Computer Science and Media Technology

1DV505 Programmering och datastrukturer, 7,5 högskolepoäng


Programming and Data Structures, 7.5 credits

Main field of study


Computer Science

Subject
Informatics/Computer and Systems Sciences

Level
First cycle

Progression
G1F

Date of Ratification
Approved 2023-12-18.
Revised 2024-02-26.
The course syllabus is valid from autumn semester 2024.

Prerequisites
Introduction to programming, 7.5 credits (1DV501 or 1DT910) or equivalent.

Objectives
After completing the course, students are expected to be able to:

Knowledge and understanding

• A.1 Explain algorithms and data structures, including their properties such as
limitations and complexity, and
• A.2 explain the concept of time complexity.

Skills and abilities


• B.1 Implement custom classes in the Python programming language
• B.2 determine the time complexity of algorithms and data structures
• B.3 implement algorithms and data structures
• B.4 conduct experiments to validate an algorithm's expected properties
• B.5 perform unit tests of classes, algorithms, and data structures, and
• B.6 write reports describing an experiment.

Judgement and approach

• C.1 Reason about which algorithm or data structure is most suitable in a given
situation, and
• C.2 reason about the correctness of an algorithm and identify common pitfalls.

Content
The course provides an in-depth understanding of algorithms, data structures, and
algorithm analysis. The following topics are covered:

• Installing and utilizing tools and libraries used in programming


• Implementing custom classes in the Python programming language
• Introduction to algorithms and data structures
• Time complexity analysis
• Time measurements
• Conducting experiments to validate an algorithm's expected properties,
hypothesis testing
• Report writing
• Common search and sorting algorithms
• Implementation of lists, queues, stacks, hash tables, binary search trees, binary
heaps, and graphs
• Unit testing
• Version control

Type of Instruction
The teaching is conducted through lectures and instructor-led laboratory sessions. The
laboratories are either individual or conducted in groups.

Examination
The course is assessed with the grades A, B, C, D, E or F.

The grade A is the highest grade level, the remaining grades follow in descending order
where the grade E is the lowest grade level to be passed. The grade F means that the
student's performance has been assessed as failing.

Assessment of student performance is conducted through individual written exams and


programming assignments. The programming assignments are individual and examined
through submission followed by subsequent oral examinations. To pass the course, a
passing grade is required for all components. The final grade is determined by: written
exam (40%) and programming assignments (60%).

Resit examination is offered in accordance with Linnaeus University’s local regulations


for courses and examination at the first- and second-cycle levels.
In the event that a student with a disability is entitled to special study support, the
examiner will decide on adapted or alternative examination arrangements.
Objectives achievement
The examination of the course is divided as follows:
Module 2401 Programming task 1 1.0 credits with the grading system UG
Module 2402 Programming task 2 1.0 credits with the grading system UG
Module 2403 Programming task 3 1.0 credits with the grading system UG
Module 2404 Programming task 4 1.0 credits with the grading system UG
Module 2405 Written exam 3.5 credits with the grading system AF

The examination elements are linked to the course objectives in the following ways:
Module 2401 links to the course objectives: B.1, B.2, B.3, B.4, B.6, C.1
Module 2402 links to the course objectives: B.1, B.2, B.3, B.4, B.5, C.1, C.2
Module 2403 links to the course objectives: B.1, B.2, B.3, B.4, B.5, B.6, C.1, C.2
Module 2404 links to the course objectives: B.1, B.2, B.3, B.4, B.5, C.1, C.2
Module 2405 links to the course objectives: A.1, A.2, B.2, C.1

Course Evaluation
A course evaluation should be conducted during the course or in connection with its
conclusion. The results and analysis of the completed course evaluation should be
promptly communicated to students who have completed the course. Students
participating in the next course instance should be informed of the results of the
previous course evaluation and any improvements that have been made, no later than at
the start of the course.

Overlap
The course cannot be included in a degree along with the following course/courses of
which the content fully, or partly, corresponds to the content of this course:
1DV516, 7.5 credits, 1DT910, 7.5 credits, and 1DT907, 5 credits

Other Information
Grade criteria for the A–F scale are communicated to the student through a special
document. The student is to be informed about the grade criteria for the course by the
start of the course at the latest.

Required Reading and Additional Study Material


Introduction to Python Programming and Data Structures, Y. Daniel Liang, latest
edition, 250 (750).

FTK, Distributed materials. Pages 100.

You might also like