SLO | EN

Objectives and competences

• Know basic concepts from algorithmic problem solving. • Know fundamental concepts of data structures and theri applications. • Know basic algorithm design techniques.

Content (Syllabus outline)

Algorithm analysis: time in space complexity. Elementary data structures: stack, queue and linked list. Trees: binary tree, implementation and traversal. Heap and priority queue. Binary search trees. Algorithmic problem solving: examples of problems and methods of solving. Algorithmic strategies: divide and conquer, greedy algorithms, dynamic programming, backtracking.

Learning and teaching methods

• Lectures • Seminary work • Computer and theoretical exercises

Intended learning outcomes - knowledge and understanding

• Ability to apply elementary and advanced data stuctures. • To recognize the influence of data structure to algorithm complexity in practical applications. • To understand principles of algorithm analysis. • To understand the meaning of algorithm design.

Intended learning outcomes - transferable/key skills and other attributes

• Knowledge transfer of algorithmic thinking into other fields (discrete mathematics, biology, chemistry, …)

Readings

K. Mehlkor, P. Sanders, Algorithms and data structures : the basic toolbox, Springer, 2008. J. Kozak, Podatkovne strukture in algoritmi, Ljubljana, DMFA,1997. D. Harel, Y. Feldman, Algorithmics: the spirit of computing, AddisonWesley : Pearson Education, 2004. M.A. Weiss, Data structures and algorithms analysis, The Benjamin/Cummings Publishing Company, 1995. A. Shen, Algorithms and programming: problems and solutions, Springer, 2010.

Prerequisits

There are none.

  • red. prof. dr. ALEKSANDER VESEL

  • Written examination: 30
  • Written examination: 30
  • Homeworks: 20
  • Seminar paper: 20

  • : 30
  • : 15
  • : 45
  • : 120

  • Slovenian
  • Slovenian

  • SUBJECT TEACHER - 2nd