UJEP materiály

Algorithmization and programming I

University class on Python programming in the first semester of the first year.

Syllabus

  1. Basic terminology of object-oriented programming, objects (values) of basic classes (numbers, logical values) and operations or methods over them
  2. Variables, standard input and output, program branching (if-then construct)
  3. User functions (input parameters, return values, variable visibility area), tuples
  4. Strings and methods over strings, indexing, modifiable referenced values (reference semantics)
  5. Loops (while and for), premature termination of loops
  6. Lists (interfaces), asymptotic (time) complexity
  7. Key algorithms over lists (e.g. duplication, filtering, reduction)
  8. Dictionaries (interfaces, use for representing associative arrays, sparse arrays, and caches)
  9. Hash tables (internal implementation, hash functions)
  10. File input and output (text)
  11. Input and output to files (binary), byte arrays
  12. Exceptions and basic exception handling, context manager (with) used in resource management
  13. Final summary