Lecturer(s)
|
-
Beránek Ladislav, prof. Ing. CSc., MBA
|
Course content
|
Lectures: 1. Basic algorithmic construction; 2. Method of algorithm design; 3. Basic principles of algorithms evaluation; 4. Algorithmic construction; a. work with sequence; b. work with matrixes; 5. Data structures; a. compact and linked lists; b. stack, queue, heap; 6. Sorting algorithms; a. direct method; b. quicksort, heapsort; 7. Trees, hash tables - basic principles;
|
Learning activities and teaching methods
|
Monologic (reading, lecture, briefing), Demonstration, E-learning
|
Learning outcomes
|
The students become acquainted in this course with the basic data structures and their usage at effective algorithm design. Students will master the basic algorithmic constructions and procedures for algorithm development. The overview of basic abstract data type (field, list, tree, dictionary) and often used algorithms aimed above all on data organization (sorting, searching) is in practice the main part of this course.
Students will understand the basic principles of algorithms, they will be able to create simpler algorithms and use them at their own programs design.
|
Prerequisites
|
The course has no prerequisities.
|
Assessment methods and criteria
|
Test
Credit Requirements: Final written test.
|
Recommended literature
|
-
CORMEN, T. H., LEISERSON, CH. E. RIVEST, R. R. Introduction to Algorithms.. Cambridge : MIT Press, 2002. ISBN 0-262-03293-7.
-
Edmonds, J. How to Think about Algorithms.. Cambridge: University Press, 2008.
-
McMillan, M. Data Structures and Algorithms Using C#.. New York: Cambridge University Press, 2007.
-
Preiss, B. R. Data Structures and Algorithms whit Object-Oriented Design Patterns in Java. New York: John Wiley & Sons, 2000. ISBN 0-471-34613-6.
-
Sedgewick, R. Algorithms in Java.. New York: Addison Wesley, 1999.
|