translated by Google

Machine-translated page for increased accessibility for English questioners.

Bachelor's final examination

For each question, there are also codes of subjects that cover the issue (this is only an indicative list).

Theoretical foundations of computer science and mathematics

  1. Sets, relations and representations
    Basic set operations. Relations and their properties - equivalences and decompositions, arrangements and ordered sets. Composition of sessions, display (injection, surjection, bijection).
    IB000, MB101 / MB201
  2. Elementary number theory
    Divisibility, Euclidean algorithm, modular operations, prime numbers and its testing, application of number theory (RSA, DSA, linear and polynomial codes).
    MB104 / MB204
  3. Logic
    Propositional and predicate logic, operations, quantifiers, syntax. Semantics, truthfulness, satisfiability, provability. Normal forms of formulas (conjunctive and disjunctive, prenex, Horn clauses).
    IB000, IB101
  4. Linear algebra I
    Operations with vectors and matrices, properties of linear operations and scalar product, solution of a system of linear equations. Gaussian elimination, determinant.
    MB101 / MB201
  5. Linear algebra II
    Eigenvalues and vectors, their geometric meaning, inverse matrices, vector subspaces, vector bases. Affine objects, affine transformations.
    MB101 / MB201
  6. Combinatorics and probability
    Elementary combinatorics (combinations, permutations, variations), solving simple combinatorial problems. Probability, conditional probability (Bayes' theorem).
    MB101 / MB201, MB103 / MB203
  7. Statistics
    Descriptive statistics, mean, median, variance, correlation. Estimates of statistics and their reliability. Distribution functions, distribution of random variables and their examples.
    MB103 / MB203
  8. Mathematical analysis
    Properties of real functions, polynomials, continuous functions and limits, derivatives, indefinite and definite integral, geometric meaning. Differential equations and their meaning.
    MB102 / MB202, MB103 / MB203
  9. Graphs
    Types of graphs, trees, degrees of vertices, oriented graphs, representations of graphs. Graph depth and width search algorithms and their use. Context components.
    IB000, IB002
  10. Graph problems
    Evaluated graphs, definition of the shortest path, minimum skeletons of a graph, algorithms for finding the shortest paths (Dijkstra's, Bellman-Ford's algorithm) and minimum skeletons in a graph.
    IB000, IB002
  11. Formal languages I
    Chomsky's hierarchy of formal languages. Regular languages, their representations and conversions between them. Finite state machine variants. Nondeterminism and determinization of automata. Closing properties of regular languages.
    IB102 / IB005
  12. Formal languages II
    Context-free languages and their representations. Variants of stack automata (acceptance methods, determinism and nondeterminism, extended stack automata). Nondeterministic parsing. Closing properties of context-free languages.
    IB102 / IB005
  13. Computability
    Turing machine. Stop problem. Decidability and partial decidability, indecidability. Method of reduction, diagonalization.
    IB102 / IB005 + IB107
  14. Correctness and complexity of the algorithm
    Partial and total correctness, proofs of correctness. Asymptotic complexity, O-notation. Justification of the correctness and complexity of basic algorithms (eg sorting algorithms, binary search).
    IB002, IB102 / IB107
  15. Complexity
    Algorithm complexity versus problem complexity. Complexity classes (P, NP, PSPACE) and relationships between them, examples of problems from individual classes. Difficulty and completeness of the problem in a given class, polynomial reduction of problems, NP-complete problems.
    IB102 / IB107
  16. Basic data structures.
    Basic abstract data structures (list, set, stack, queue), related operations and their complexity. Typical implementations, application examples.
    IB111, IB002
  17. Tree-based data structures
    Tree data structures (binary search trees, B-trees, red-black trees, heaps), related operations and their complexity. Typical implementations, application examples.
  18. Recursive algorithms
    Divide and conquer method, advantages and disadvantages of using recursion, elimination of recursion. Explanation of principles and implementation of sorting recursive algorithms. Relationship between recursion and mathematical induction.
    IB002, IB015
  19. Functional programming
    Functional programming paradigm (calculation principle, reduction step, reduction strategies and their properties, examples). Higher order functions and their use. Lambda function. Ability of elementary programming in Haskell.
  20. Logic programming
    Logical programming paradigm (calculation principle, unification, computational trees, queries, free variables). Ability of elementary programming in Prolog.
    IB015, IB101

Program, computer and information systems

  1. Programming languages
    Data and control structures of programming languages, data types. Compilation, interpretation.
    IB111, PB071, PB161 / PB162
  2. Object Oriented Programming I
    Encapsulation, inheritance, polymorphism. Implementation of the above principles of OOP in C ++ or Java (according to your choice).
    PB161 / PB162
  3. Object-oriented programming II
    Object-oriented programming in imperative language, object collaboration, event-driven programming, exceptions. Implementation of the above principles of OOP in C ++ or Java (according to your choice).
    PB161 / PB162
  4. Basic principles of computers I
    Numerical systems, relations between number systems, computer display of numbers, principles of arithmetic operations.
    PB150 / PB151
  5. Basic principles of computers II
    Combinational and sequential logic circuits. Von Neumann's architecture. Principles of processor operation, interrupts.
    PB150 / PB151
  6. Operating system
    Operating system architectures, application programming interface for operating systems. Peripherals, their management, drivers. Processes and threads, synchronization of processes and threads.
    PB152 / PB153
  7. Process planning
    The essence and goals of task scheduling in operating systems. Implementation of processor activity planning. Deadlocks, deadlock conditions and deadlock protection methods.
    PB152 / PB153
  8. Working with memory
    Memory hierarchy. Working with memory, logical and physical address space, memory management, memory virtualization, segmentation, paging.
    PB152 / PB153
  9. Database I
    Relational data model, relational schema, keys of relational schemas, relational algebra (projection, selection, aggregation, renaming), connection of relations.
  10. Database II
    Functional dependencies, normal forms (1NF, 2NF, 3NF, Boyce-Codd NF), relations between normal forms. Decomposition of relational schemas, normalization of schema.
  11. SQL.
    Command syntax and semantics. Commands for querying and updating data, aggregation functions, triggers, and stored procedures. Commands for data definition, integrity constraints.
  12. Transactions and query processing
    Transaction processing, its properties. Basic principles of query evaluation (costs of query evaluation, use of indexing and hashing).
  13. Computer networks I
    Models of computer network layers (ISO / OSI, TCP / IP): functionality and interoperability of layers, addressing. Physical layer, signals and their coding, media access control.
  14. Computer networks II
    Interconnection of computer networks. Network protocols, switching and routing, multicast. Secured data transfer, connection setup and termination. Transport protocols.
  15. Network applications and security I
    Basic application protocols: mail delivery, file transfer, web, name service. Principles of description and quality assurance of service, use for multimedia.
  16. Network applications and security II
    Security of network communication, authentication and encryption, security on individual protocol layers.
  17. Software Engineering I
    SW life cycle and related activities. Requirements specification and their types. Structured vs. object-oriented methods of analysis and design.
  18. Software Engineering II
    Testing, verification and validation. Operation, maintenance and further development of the system. The role of UML in supporting SW analysis and design.
  19. Data modeling
    Design of data structures, graphical expression, conversion to a relational model. ER diagram (entities, attributes, relationships), UML class diagram and their comparison.