Skip to content


Algorithms and Data Structures 7.5 credits

Algoritmer och datastrukturer
First cycle, D0012E
Course syllabus valid: Autumn 2021 Sp 1 - Present
The version indicates the term and period for which this course syllabus is valid. The most recent version of the course syllabus is shown first.

Education level
First cycle
Grade scale
G U 3 4 5
Computer Science
Subject group (SCB)
Computer Technology
Main field of study
Computer Science and Engineering

Entry requirements

In order to meet the general entry requirements for first cycle studies you must have successfully completed upper secondary education and documented skills in English language and the student should have knowledge about object-oriented programming, object-oriented design, and discrete mathematics, equivalent to the courses D0009E Introduction to Programming, D0010E Object-oriented Programming and Design and M0009M Discrete Mathematics. General computer skills.

More information about English language requirements


The selection is based on 1-165 credits.

Course Aim

After completing the course the student shall

  • demonstrate knowledge of the disciplinary foundation and of proven experience in the design and analysis of algorithms and data structures that solve different types of problems correctly and efficiently
  • demonstrate the ability to construct, analyze and critically evaluate various algorithmic solutions
  • demonstrate the ability to simulate and evaluate complex computer programs
  • show knowledge of mathematical tools for analyzing algorithms
  • demonstrate ability for teamwork and cooperation and demonstrate ability to independently identify the need and ability to gain additional knowledge to enhance their skills
  • demonstrate the ability to plan and use appropriate methods to undertake advanced tasks within predetermined parameters  
  • demonstrate the ability to make judgments with regard to the possibilities of technologies , and demonstrate proficiency in present and discuss their conclusions and the knowledge and arguments that form the basis for these


The course will emphasize on the techniques for algorithmic problem solving. The main focus is the problems of searching in and sorting large data sets and the algorithmic graph problems. Basic data structures investigated include queues, stacks, lists, priority queues, trees, search trees, graphs, sets, and tables. The topics to be covered also include paradigms for design of algorithms and recurrence equations, measures of algorithmic efficiency, upper bounds, analysis of algorithmic asymptotic complexity in terms of time and memory.

Each course occasion´s language and form is stated and appear on the course page on Luleå University of Technology's website.
Lectures, lessons and laboratory team work carried out in a computer lab. During the course there could be homework assignments that render bonus points on the written exam that follows directly after the course has been given.

If there is a decision on special educational support, in accordance with the Guideline Student's rights and obligations at Luleå University of Technology, an adapted or alternative form of examination can be provided.
Written exam and mandatory programming assignments.

The credits for this course cannot be combined with the credits for SMD135, SMD168 and SMD184.

Jingsen Chen

Transition terms
The course D0012E is equal to SMD184

Literature. Valid from Autumn 2011 Sp 2 (May change until 10 weeks before course start)
Th. H Cormen , C. E. Leiserson , R. L. Rivest , and C. Stein: Introduction to Algorithms (Third Edition) ISBN 0-262-03384-4, 978-0-262-03384-8,
MIT Press, 2009.

Course offered by
Department of Computer Science, Electrical and Space Engineering

CodeDescriptionGrade scaleHPStatusFrom periodTitle
0002Laboratory workU G#3.00MandatoryA07
0003Written examG U 3 4 54.50MandatoryA21

Study guidance
Study guidance for the course is to be found in our learning platform Canvas before the course starts. Students applying for single subject courses get more information in the Welcome letter. You will find the learning platform via My LTU.

Syllabus established
by the Department of Computer Science and Electrical Engineering 28 Feb 2007

Last revised
by Jonny Johansson, HUL SRT 17 Feb 2021