Subject: Algorithms and data structures
(17 -
IZOO54) Basic Information
Native organizations units
Course specification
Course is active from 25.10.2012.. Precondition courses
The goal of the course is to introduce the student to the basic algorithms used in computer programming, ways in which their correctness and performance an be analyzed from a theoretical standpoint, as well as the basic data structures used in the development of computer programs. Upon successful completion of the course the students will have the knowledge and skills that will enable them to implement contemporary computer programs. They will be able to theoretically verify the correctness of an algorithm and assess its computational complexity. They will also gain practical skills in Java programming. The course will cover the following areas: basic concepts of computer algorithms and data structures, basic sorting algorithms, divide-and-conquer approach to algorithm design, iterative algorithms, basic data structures (arrays, lists, binary trees), analysis of algorithm correctness, complexity analysis and some non-deterministic (evolutionary) algorithms. The theoretical instruction will be accompanied by practical training in implementation of basic algorithms and data structures in Java. Lectures and laboratory exercises, test and exam project. The laboratory exercises are aimed at developing skills that allow the students to implement basic algorithms and data structures using the Java programming language. The level of adoption o theoretical knowledge will be assessed through tests and the exam project will require students to independently implement a fairly complex algorithm
|