460-2001/04 – Algorithms I (ALG I)

Gurantor departmentDepartment of Computer ScienceCredits4
Subject guarantordoc. Mgr. Jiří Dvorský, Ph.D.Subject version guarantordoc. Mgr. Jiří Dvorský, Ph.D.
Study levelundergraduate or graduateRequirementChoice-compulsory
Study languageCzech
Year of introduction2015/2016Year of cancellation2019/2020
Intended for the facultiesUSPIntended for study typesBachelor
Instruction secured by
LoginNameTuitorTeacher giving lectures
DOH089 Ing. Pavel Dohnálek, Ph.D.
DVO26 doc. Mgr. Jiří Dvorský, Ph.D.
Extent of instruction for forms of study
Form of studyWay of compl.Extent
Full-time Examination 2+2

Subject aims expressed by acquired skills and competences

Acquaint students with the basics of structured programming, the basics of C + +. After completing the course, students will be able to: Work with integrated development environment for C++. Define a describe basic programming constructions. Develop and debug a simple program C++. Use data structures such as array, list, etc. Write a recursive function. Use sorting and searching algorithms in their programs.

Teaching methods



This subject is the introductory programming course. Students are expected to have the basic C++ knowledge and high school math knowledge. Discussed algorithms and data structures will be demonstrated in C++. A large emphasis is placed on practical implementation discussed algorithms and data structures. Students are encouraged analysis and synthesis solutions to the problems of smaller units.

Compulsory literature:

LEVITIN, Anany. Introduction to the design. 3rd ed. Boston: Pearson, 2012. ISBN 978-0-13-231681-1. CORMEN, Thomas H. Introduction to algorithms. 2nd ed. Cambridge, Mass.: MIT Press, 2001. ISBN 02-620-3293-7. SEDGEWICK, Robert. Algorithms in C. 3rd ed. Reading, Mass: Addison-Wesley, 1998. ISBN 978-020-1350-883.

Recommended literature:

STROUSTRUP, Bjarne. The C programming language. Fourth edition. Upper Saddle River, NJ: Addison-Wesley, 2013. ISBN 978-0321563842. SCHILDT, Herbert. Teach yourself C. 3rd ed. Berkeley: Osborne McGraw-Hill, 1998. ISBN 978-0078823923.

Way of continuous check of knowledge in the course of semester

Conditions for granting credit Implementation and presentation of the project. Programming applications to simple exercises


Other requirements

Students are expected to know high school math and computer skills at users level.


Subject has no prerequisities.


Subject has no co-requisities.

Subject syllabus:

Lectures Introductory lecture, organizational matters The first program in C++, algorithm, program compilation, processor, process Variables, constants, data types Control of language structure (sequence, branching, loop) Structured Programming in C++, functions and their parameters, function calls Array Array search algorithms (linear, binary) Recursion, definition, examples, a simple backtracking Sorting, problem definition, address sorting Basic sorting algorithms(insertion sort, selection, bubble) Advanced sorting algorithms (quicksort, heapsort, mergesort) The content of computer training Getting to know the development environment, Visual Studio 2015 planned Implementation and debugging trivial programs - Hello World Implementation and debugging programs with basic structures such as calculating the greatest common divisor Work with functions, called value parameters, reference, constant parameters Working with the array Implementation of array search algorithms Recursive functions Backtracking Basic sorting algorithms Advanced sorting algorithms Project content The project specification will be directed to use the sorting and searching algorithms, array based algorithms etc.

Conditions for subject completion

Full-time form (validity from: 2015/2016 Winter semester, validity until: 2019/2020 Summer semester)
Task nameType of taskMax. number of points
(act. for subtasks)
Min. number of points
Examination Examination 100  51
Mandatory attendence parzicipation:

Show history

Occurrence in study plans

Academic yearProgrammeField of studySpec.ZaměřeníFormStudy language Tut. centreYearWSType of duty
2018/2019 (B3968) Applied Sciences and Technologies (3901R076) Applied Sciences and Technologies P Czech Ostrava 3 Choice-compulsory study plan
2017/2018 (B3968) Applied Sciences and Technologies (3901R076) Applied Sciences and Technologies P Czech Ostrava 3 Choice-compulsory study plan
2016/2017 (B3968) Applied Sciences and Technologies (3901R076) Applied Sciences and Technologies P Czech Ostrava 3 Choice-compulsory study plan
2015/2016 (B3968) Applied Sciences and Technologies (3901R076) Applied Sciences and Technologies P Czech Ostrava 3 Choice-compulsory study plan

Occurrence in special blocks

Block nameAcademic yearForm of studyStudy language YearWSType of blockBlock owner