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

Gurantor departmentDepartment of Computer ScienceCredits5
Subject guarantordoc. Mgr. Jiří Dvorský, Ph.D.Subject version guarantordoc. Mgr. Jiří Dvorský, Ph.D.
Study levelundergraduate or graduateRequirementCompulsory
Year1Semesterwinter
Study languageCzech
Year of introduction2013/2014Year of cancellation2020/2021
Intended for the facultiesFEI, USPIntended for study typesBachelor
Instruction secured by
LoginNameTuitorTeacher giving lectures
BIE0026 Ing. Martin Bielik
DVO26 doc. Mgr. Jiří Dvorský, Ph.D.
Extent of instruction for forms of study
Form of studyWay of compl.Extent
Full-time Graded credit 2+2
Part-time Graded credit 10+0

Subject aims expressed by acquired skills and competences

To introduce students to problem solving techniques using algorithms. Upon completion of the course, the student will be able to: define and describe selected problem solving algortihmic techniques using, demonstrate these techniques on sample problems use these techniques to solve other problems, work with combinations of several techniques together.

Teaching methods

Lectures
Tutorials

Summary

This course is one of the introductory programming courses. The course aims to introduce students to problem solving techniques, strategies, using algorithms. The algorithms and data structures discussed will be demonstrated in C++. Students are encouraged to analyze algorithmic problems and to synthesize solutions from 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

E-learning

Other requirements

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

Prerequisities

Subject codeAbbreviationTitleRequirement
460-2052 UPR Introduction to Programming Recommended
460-2054 FPR Functional Programming Recommended

Co-requisities

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

Part-time form (validity from: 2013/2014 Winter semester, validity until: 2020/2021 Summer semester)
Task nameType of taskMax. number of points
(act. for subtasks)
Min. number of pointsMax. počet pokusů
Graded exercises evaluation Graded credit 100 (100) 51 3
        První test Written test 20  10 2
        Druhý test Other task type 20  10 2
        Třetí test Other task type 20  10 2
        Projekt Project 40  21 1
Mandatory attendence participation: obligatory participation at all exercises, 2 apologies are accepted

Show history

Conditions for subject completion and attendance at the exercises within ISP:

Show history

Occurrence in study plans

Academic yearProgrammeBranch/spec.Spec.ZaměřeníFormStudy language Tut. centreYearWSType of duty
2020/2021 (B2647) Information and Communication Technology P Czech Ostrava 1 Compulsory study plan
2020/2021 (B2647) Information and Communication Technology K Czech Ostrava 1 Compulsory study plan
2019/2020 (B2647) Information and Communication Technology P Czech Ostrava 1 Compulsory study plan
2019/2020 (B2647) Information and Communication Technology K Czech Ostrava 1 Compulsory study plan
2018/2019 (B2660) Computer Systems for the Industry of the 21st. Century P Czech Ostrava 1 Compulsory study plan
2018/2019 (B3973) Automotive Electronic Systems P Czech Ostrava 1 Compulsory study plan
2018/2019 (B2647) Information and Communication Technology P Czech Ostrava 1 Compulsory study plan
2018/2019 (B2647) Information and Communication Technology K Czech Ostrava 1 Compulsory study plan
2017/2018 (B2647) Information and Communication Technology P Czech Ostrava 1 Compulsory study plan
2017/2018 (B2647) Information and Communication Technology K Czech Ostrava 1 Compulsory study plan
2017/2018 (B2660) Computer Systems for the Industry of the 21st. Century P Czech Ostrava 1 Compulsory study plan
2017/2018 (B3973) Automotive Electronic Systems P Czech Ostrava 1 Compulsory study plan
2016/2017 (B2647) Information and Communication Technology P Czech Ostrava 1 Compulsory study plan
2016/2017 (B2647) Information and Communication Technology K Czech Ostrava 1 Compulsory study plan
2016/2017 (B2660) Computer Systems for the Industry of the 21st. Century P Czech Ostrava 1 Compulsory study plan
2015/2016 (B2647) Information and Communication Technology P Czech Ostrava 1 Compulsory study plan
2015/2016 (B2647) Information and Communication Technology K Czech Ostrava 1 Compulsory study plan
2014/2015 (B2647) Information and Communication Technology P Czech Ostrava 1 Compulsory study plan
2014/2015 (B2647) Information and Communication Technology K Czech Ostrava 1 Compulsory study plan
2013/2014 (B2647) Information and Communication Technology P Czech Ostrava 1 Compulsory study plan
2013/2014 (B2647) Information and Communication Technology K Czech Ostrava 1 Compulsory study plan

Occurrence in special blocks

Block nameAcademic yearForm of studyStudy language YearWSType of blockBlock owner
V - ECTS - bc. 2014/2015 Full-time Czech Optional 401 - Study Office stu. block
V - ECTS - bc. 2013/2014 Full-time Czech Optional 401 - Study Office stu. block

Assessment of instruction



2020/2021 Winter
2019/2020 Winter
2018/2019 Winter
2017/2018 Winter
2016/2017 Winter
2015/2016 Winter
2014/2015 Winter
2013/2014 Winter