Search programme

​Use the search function to search amongst programmes at Chalmers. The study programme and the study programme syllabus relating to your studies are generally from the academic year you began your studies.

Syllabus for

Academic year
LET375 - Algorithms and data structures
 
Syllabus adopted 2009-02-26 by Head of Programme (or corresponding)
Owner: TIDAL
7,5 Credits
Grading: TH - Five, Four, Three, Not passed
Education cycle: First-cycle
Major subject: Computer Science and Engineering, Information Technology
Department: 37 - COMPUTER SCIENCE AND ENGINEERING


Teaching language: Swedish

Course module   Credit distribution   Examination dates
Sp1 Sp2 Sp3 Sp4 Summer course No Sp
0105 Examination 6,0 c Grading: TH   6,0 c   03 Jun 2016 pm L,  09 Apr 2016 pm L,  26 Aug 2016 pm L
0205 Written and oral assignments 1,5 c Grading: UG   1,5 c    

In programs

TKELT ELECTRICAL ENGINEERING, Year 3 (compulsory elective)
TKIEK INDUSTRIAL ENGINEERING AND MANAGEMENT - Information technology, Year 2 (compulsory)
TIDAL COMPUTER ENGINEERING, Year 2 (compulsory)

Examiner:

Univ lektor  Uno Holmer



  Go to Course Homepage

Eligibility:

In order to be eligible for a first cycle course the applicant needs to fulfil the general and specific entry requirements of the programme(s) that has the course included in the study programme.

Course specific prerequisites

Skills in object oriented programming comprising classes and objects, data encapsulation, inheritance and polymorphism in Java, corresponding to DAT050 Object oriented programming. Elementary skills in discrete mathematics.

Aim

Algorithms and data structures comprises fundamental components in most modern software products. Knowledge and skill in techniques for the construction and analysis of algorithms are important tools in the construction of correct and efficient programs. Knowledge of data abstraction and data structures is important in the construction of, use, and maintenance of adaptable and reusable program components.

The course shall give knowledge and skill in the construction and use of algorithms and data structures, and an introduction to various techniques for the analysis of algorithms together with insights in the advantages of using data abstraction in program development.

Learning outcomes (after completion of the course the student should be able to)


  • use various algorithm techniques as tools for problem solving in program construction.
  • perform analysis of the resource demands of algorithms and data structures.
  • use various data structures and gain basic knowledge about important applications.
  • use standard software libraries for data structures and algorithms.
  • implement data structures in an object oriented language.

Content


  • Java is used for coding.
  • Algorithm techniques: iterative and recursive algorithms, proof by induction, divide and conquer, backtracking, dynamic programming.
  • Analysis of the resource demands of algorithms and data structures with respect to computation timed and memory consumption. Asymptotic complexity, average complexity and worst case complexity.
  • Linear and binary search.
  • Sorting algorithms and their properties.
  • The concepts abstract data type and data structure.
  • Data structures: vectors, strings, stacks, queues, lists, trees, binary search trees, hash tables, priority queues, graphs, sets. Common applications. Typical properties and time complexity for the operations in the various structures.
  • Standardised algorithms and classes for data structures.
  • Implementation of data structures.

Organisation

Lecture classes and supervised computer exercises.

Literature

Weiss, M.A., Data structures and problem solving using Java, Addison-Wesley.
Edition is communicated at the beginning of the course, or can be requested from the examiner.

Examination

Mandatory assignments and written exam. Final grade is obtained after passed assignments and is based on the grade of the written exam.


Page manager Published: Mon 28 Nov 2016.