====== Lectures ====== ^ Date ^ Lecture ^ Topic ^ Slides ^ Code ^ | 19.02.2025 | 1 | Basic data structures - arrays, sets, dictionaries, algorithmic complexity motivation | {{ :courses:be5b33pge:lectures:l1_intro_strctures.pdf | Lecture 1}} | {{ https://gitlab.fel.cvut.cz/pge-student-materials/pge_lectures/-/blob/main/src/pge_lectures/lecture_01/l1_intro_strctures.ipynb?ref_type=heads | Notebook 1}} | | 26.02.2025 | 2 | 2D arrays (matrices), array processing (search, cumulative sum) | {{ :courses:be5b33pge:lectures:l2_matrices_processing.pdf | Lecture 2}} | {{ https://gitlab.fel.cvut.cz/pge-student-materials/pge_lectures/-/blob/main/src/pge_lectures/lecture_02/l2_matrices_processing.ipynb?ref_type=heads | Notebook 2}} | | 05.03.2025 | 3 | Strings, text processing, string edit distance, files | {{ :courses:be5b33pge:lectures:l3_strings_io.pdf | Lecture 3}} | {{ https://gitlab.fel.cvut.cz/pge-student-materials/pge_lectures/-/blob/main/src/pge_lectures/lecture_03/l3_strings_io.ipynb?ref_type=heads | Notebook 3}} | | 12.03.2025 | 4 | Numpy arrays | {{ :courses:be5b33pge:lectures:l4_numpy_arrays.pdf | Lecture 4}} | {{ https://gitlab.fel.cvut.cz/pge-student-materials/pge_lectures/-/blob/main/src/pge_lectures/lecture_04/l4_numpy_arrays.ipynb?ref_type=heads | Notebook 4}} | | 19.03.2025 | 5 | Array processing II (sliding window, sorting, convolution, sparse matrices) | {{ :courses:be5b33pge:lectures:l5_array_processing.pdf | Lecture 5}} | {{ https://gitlab.fel.cvut.cz/pge-student-materials/pge_lectures/-/blob/main/src/pge_lectures/lecture_05/l5_array_processing.ipynb?ref_type=heads | Notebook 5}} | | 26.03.2025 | 6 | ADT - trees, stacks, queues | {{ :courses:be5b33pge:lectures:l6_adt.pdf | Lecture 6}} {{ :courses:be5b33pge:lectures:calculator.pdf | Example}} | {{ https://gitlab.fel.cvut.cz/pge-student-materials/pge_lectures/-/blob/main/src/pge_lectures/lecture_06/l6_adt.ipynb?ref_type=heads | Notebook 6}} {{ https://gitlab.fel.cvut.cz/pge-student-materials/pge_lectures/-/blob/main/src/pge_lectures/lecture_06/example/calculator.ipynb?ref_type=heads | Example}} | | 02.04.2025 | 7 | Refresher lecture (preparation for midterm) | | {{ https://gitlab.fel.cvut.cz/pge-student-materials/pge_lectures/-/tree/main/src/pge_lectures/midterm_examples?ref_type=heads | Midterm examples }} | | 09.04.2025 | 8 | Trees and recursion I | {{ :courses:be5b33pge:lectures:l7_recursion.pdf | Lecture 7}} | {{ https://gitlab.fel.cvut.cz/pge-student-materials/pge_lectures/-/blob/main/src/pge_lectures/lecture_07/l7_recursion.ipynb?ref_type=heads | Notebook 7}} | | 16.04.2025 | 9 | Trees and recursion II | {{ :courses:be5b33pge:lectures:l8_recursion.pdf | Lecture 8}} | {{ https://gitlab.fel.cvut.cz/pge-student-materials/pge_lectures/-/blob/main/src/pge_lectures/lecture_08/l8_recursion.ipynb?ref_type=heads | Notebook 8}} | | 23.04.2025 | 10 | Scientific Python libraries - data loading and processing | {{ :courses:be5b33pge:lectures:l9_scientific_python_proc.pdf | Lecture 9}} | {{ https://gitlab.fel.cvut.cz/pge-student-materials/pge_lectures/-/blob/main/src/pge_lectures/lecture_09/l9_scientific_python_proc.ipynb?ref_type=heads | Notebook 9}} | | 30.04.2025 | 11 | Scientific Python libraries - visualization | {{ :courses:be5b33pge:lectures:l10_visualization.pdf | Lecture 10}} | {{ https://gitlab.fel.cvut.cz/pge-student-materials/pge_lectures/-/blob/main/src/pge_lectures/lecture_10/l10_visualization.ipynb?ref_type=heads | Notebook 10}} | | 07.05.2025 | 12 | Run time estimation, profiling, asymptotic complexity | {{ :courses:be5b33pge:lectures:l11_algorithmic_complexity.pdf | Lecture 11}} | {{ https://gitlab.fel.cvut.cz/pge-student-materials/pge_lectures/-/blob/main/src/pge_lectures/lecture_11/l11_algorithmic_complexity.ipynb?ref_type=heads | Notebook 11}} | | 14.05.2025 | 13 | Rector's day | | | | 21.05.2025 | 14 | Reserve, preparation for exam | | | ====== Supplementary material for lectures ====== {{https://cw.fel.cvut.cz/b242/_media/courses/be5b33pge/lectures/py_cheatsheet.pdf || NumPy (& string + list) cheatsheet }} The supplementary materials (interactive Jupyter notebooks) for the lectures are located here: [[https://gitlab.fel.cvut.cz/pge-student-materials/pge_lectures|pge_lectures@FEL Gitlab]] Download the repository and read the instruction for installation in the `README.md` file. It is assumed that you already have Python installed, ideally (but not necessarily) with some Python environment management. For example, [[https://docs.conda.io/projects/conda/en/latest/user-guide/install/index.html|Conda]] or [[https://mamba.readthedocs.io/en/latest/installation/mamba-installation.html|Mamba]]. Slides and supplementary materials to lectures will be added progressively during the semester, as this course is going through changes.