Code: BIE-PA2.21 |
Programming and Algorithmics 2 |
Lecturer: Ing. Jan Trávníček Ph.D. |
Weekly load: 2P+1R+2C |
Completion: A, EX |
Department: 18101 |
Credits: 7 |
Semester: S |
- Description:
-
Students know the instruments of object-oriented programming and are able to use them for specifying and implementing abstract data types (stack, queue, enlargeable array, list, set, table). They learn these skills using the C++ programming language and are introduced to all C++ features needed in object-oriented programming (e.g., template programming, copying/moving of objects, operator overloading, inheritance, polymorphism).
- Contents:
-
1. From C to C++, non-object-oriented extensions.
2. Programming styles, introduction to object-oriented programming.
3. Classes and objects in the C++ language.
4. Overloaded operators in C++.
5. Copying, copy constructor in C++.
6. Selected STL components.
7. Inheritance, polymorphism in C++.
8. Abstract classes in C++.
9. Class and function templates in C++.
10. Exceptions and exception handling in C++. Abstract data
types stack and queue in C++.
11. Abstract data types enlargeable array, list, set, and table in C++.
12. Associative data structures.
13. C++11 extensions.
- Seminar contents:
-
1. Introduction to C++
2. OOP basics
3. Visibility, constructor, destructor, modules
4. Operator overloading
5. Shallow vs. deep copy
6. STL containers
7. Inheritance
8. Abstract methods
9. Fuction a class template
10. Exceptions and C++11
11. C++11
12. Practice (extra tasks)
12. Reserve
- Recommended literature:
-
1.Cormen T. H., Leiserson C. E., Rivest R. L., Stein C. : Introduction to Algorithms (3rd Edition). MIT Press, 2016. ISBN 978-0262033848.
2. Brassard G., Bratley P. : Fundamentals of Algorithmics (3rd Edition). Pearson, 2015. ISBN 978-0133350685.
3. Sedgewick R. : Algorithms (4th Edition). Addison Wesley, 2011. ISBN 978-0321573513.
4. Sedgewick R. : Algorithms in C++, Parts 1-4: Fundamentals, Data Structure, Sorting, Searching (3rd Edition). Addison-Wesley, 1998. ISBN 978-0201350883.
- Keywords:
- FIT, programming, C++, algorithms
Abbreviations used:
Semester:
- W ... winter semester (usually October - February)
- S ... spring semester (usually March - June)
- W,S ... both semesters
Mode of completion of the course:
- A ... Assessment (no grade is given to this course but credits are awarded. You will receive only P (Passed) of F (Failed) and number of credits)
- GA ... Graded Assessment (a grade is awarded for this course)
- EX ... Examination (a grade is awarded for this course)
- A, EX ... Examination (the award of Assessment is a precondition for taking the Examination in the given subject, a grade is awarded for this course)
Weekly load (hours per week):
- P ... lecture
- C ... seminar
- L ... laboratory
- R ... proseminar
- S ... seminar