Skip to main content

Data Structures and AlgorithmsLaajuus (4 cr)

Code: TTZC0700

Credits

4 op

Teaching language

  • Finnish

Responsible person

  • Sampo Kotikoski
  • Antti Häkkinen

Objective

The student is able to describe and analyze algorithms as well as assess their functionality and efficiency in various situations. In addition, the student knows the basic data structures and is able to choose the applicable algorithms regardless of language and platform.

Content

The course introduces various types of algorithms and the most common algorithms. The measurement for the efficiency of algorithms is learned with the help of the most essential algorithms. The algorithm types are discussed starting from basic data structures and delving into the more complex (trees and graphs) implementations. The course focuses on the features of various types of algorithms and data structures regardless of implementation language or platform

Qualifications

Basics of Programming

Assessment criteria, satisfactory (1)

Excellent 5: The student has wide knowledge on fundamental terms related to data structures and algorithms. The student knows data structures presented during the course and is able to understand their applications. The student is able to create an algorithm with versatile use of data structures. The student is able to analyze the function of an algorithm and assess its performance. The student is able to choose and validate the most applicable algorithm for a problem-solving situation and its data structures.

Very good 4: The student has knowledge on fundamental terms related to data structures and algorithms. The student knows data structures presented during the course and is able to understand their applications. The student is able to create an algorithm with versatile use of data structures. The student is able to analyze the function of algorithm and assess its performance.

Good 3: The student has knowledge on fundamental terms related to data structures and algorithms. The student knows the linear data structures and most of the more complex data structures presented during the course. In addition, the student understands the applications of linear data structures. The student is able to create an algorithm that utilizes some particular data structure. The student is able to analyze the function of algorithm and assess its performance.

Satisfactory 2: The student knows most necessary terms related to data structures and algorithms. The student knows the linear data structures and their applications presented during the course. The student is able to analyze the function of a simple algorithm and assess its performance.

Sufficient 1: The student knows the most necessary terms related to data structures and algorithms. The student knows the fundamental linear data structures and their applications presented during the course. The student is able to analyze the function of a simple algorithm and assess its performance.

Fail 0: The student does not meet the minimum criteria set for the course.

Assessment criteria, good (3)

Good 3: The student has knowledge on fundamental terms related to data structures and algorithms. The student knows the linear data structures and most of the more complex data structures presented during the course. In addition, the student understands the applications of linear data structures. The student is able to create an algorithm that utilizes some particular data structure. The student is able to analyze the function of algorithm and assess its performance.

Very good 4: The student has knowledge on fundamental terms related to data structures and algorithms. The student knows data structures presented during the course and is able to understand their applications. The student is able to create an algorithm with versatile use of data structures. The student is able to analyze the function of algorithm and assess its performance.

Assessment criteria, excellent (5)

Excellent 5: The student has wide knowledge on fundamental terms related to data structures and algorithms. The student knows data structures presented during the course and is able to understand their applications. The student is able to create an algorithm with versatile use of data structures. The student is able to analyze the function of an algorithm and assess its performance. The student is able to choose and validate the most applicable algorithm for a problem-solving situation and its data structures.