Course: Programming and Algorithms in Practice

« Back
Course title Programming and Algorithms in Practice
Course code KI/A187
Organizational form of instruction Seminary
Level of course Bachelor
Year of study not specified
Semester Winter and summer
Number of ECTS credits 1
Language of instruction English
Status of course Compulsory-optional
Form of instruction Face-to-face
Work placements This is not an internship
Recommended optional programme components None
Lecturer(s)
  • Kubera Petr, RNDr. Ph.D.
Course content
1) Time and memory complexity (big O notation), algorithm examples 2-3) Matrix and array algorithms - OOP representation, polynomials representation and evaluations (Horner?s scheme), matrix multiplication 4-5) Working with bitmaps ? images denoising, simple filters implementation, thumbnails and mosaic generation 6) List, Queue, Stack ? implementation in OOP, examples of usage 7) Sorting algorithms ? examples of O(n*log(n)), O(n^2) 8) Searching algorithms ? binary search, interpolation search, string matching algorithms 9) Binary tree ? methods of traversal, implementation and usage 10-11) Backtracking algorithms ? N-Queen problem, Sudoku solving 12-13) Dynamic programming principles - source allocation problem, shortest path in graph

Learning activities and teaching methods
unspecified
Learning outcomes
This course is focused on the practice of algorithmization and programming in C# language. The real world problems are solved via object oriented paradigm. The course is focused on the problem introduction and we emphasize practical problem solution. The time and memory complexity of the algorithms is taken into account.

Prerequisites
unspecified

Assessment methods and criteria
unspecified
An individual seminar work focused on implementation and visualization of algorithm in C#. The seminar work must be approved by teacher.
Recommended literature
  • Donald E. Knuth. Umění programování, 1. díl, Základní algoritmy. Brno, 2008.
  • Nash T. C# 2010 : rychlý průvodce novinkami a nejlepšími postupy. Computer Press, Brno, 2010. ISBN 978-80-251-3034-6.
  • Pecinovský R. OOP: naučte se myslet a programovat objektově. Computer Press, Brno, 2010. ISBN 978-80-251-2126-9.


Study plans that include the course
Faculty Study plan (Version) Category of Branch/Specialization Recommended year of study Recommended semester
Faculty: Faculty of Science Study plan (Version): Information Sciences (double subject) (A14) Category: Informatics courses - Recommended year of study:-, Recommended semester: -
Faculty: Faculty of Science Study plan (Version): - (A14) Category: Informatics courses - Recommended year of study:-, Recommended semester: -
Faculty: Faculty of Science Study plan (Version): Information Sciences (double subject) (A14) Category: Informatics courses - Recommended year of study:-, Recommended semester: -
Faculty: Faculty of Science Study plan (Version): Information Systems (A14) Category: Informatics courses - Recommended year of study:-, Recommended semester: -