[[https://fel.cvut.cz/en/education/rozvrhy-ng.B212/public/html/predmety/57/20/p5720406.html|Timetable at FEE]] [[https://fel.cvut.cz/en/education/rozvrhy-ng.B212/public/html/paralelky/P57/20/par5720406.1.html|Students of PGE]] [[https://cw.felk.cvut.cz/brute/|Upload system BRUTE]] [[https://cw.fel.cvut.cz/wiki/courses/be5b33prg/start|PRG]] ====== Lectures ====== ^Lecture^ Day ^ Topics ^ Codes/slides ^ | **1.** | 16.2. | 1D arrays and lists, 2D arrays | {{ :courses:be5b33pge:lectures:arr1create.py | create }}, {{ :courses:be5b33pge:lectures:arr1access.py | access }}, {{ :courses:be5b33pge:lectures:arr1append.py | append }}, {{ :courses:be5b33pge:lectures:arr1insert.py | insert }}, {{ :courses:be5b33pge:lectures:arr1delete.py | delete }}, {{ :courses:be5b33pge:lectures:arrays2d.py | 2D fill, generate, analyze }} | | **2.** | 23.2. | Prefix sum, binary search, sliding window, speed issues | {{ :courses:be5b33pge:lectures:arr1prefsum.py | prefix sum}}, {{ :courses:be5b33pge:lectures:arr1search.py | search}} | | **3.** | 2.3. | Strings and text files \\ //Data are available in the practices section// | {{ :courses:be5b33pge:lectures:strings1.py | strings1 }} {{ :courses:be5b33pge:lectures:strings2.py | strings2}} {{ :courses:be5b33pge:lectures:strings3.py | strings3 }} {{ :courses:be5b33pge:lectures:strings4.py | strings4 }} {{ :courses:be5b33pge:lectures:strings5.py | strings5 }} {{ :courses:be5b33pge:lectures:textfiles.py | textfiles}} {{ :courses:be5b33pge:lectures:climate1.py | climate1 }} {{ :courses:be5b33pge:lectures:climate2.py | climate2 }} | | **4.** | 9.3. | Conclusion of Lessons 1., 2., 3., more examples | materials of Lectures 1,2,3. | | **5.** | 16.3. | Library support for searching and sorting, complexity of searching and sorting and other tasks. | {{ :courses:be5b33pge:lectures:searchsort1.py |search1}}, {{ :courses:be5b33pge:lectures:searchsort2.py |search2}}, {{ :courses:be5b33pge:lectures:searchsort3.py |sort1}}, {{ :courses:be5b33pge:lectures:searchsort4.py |sort2}} | | **6.** | 23.3. | Trees and recursion I, principles, simple examples | {{ :courses:be5b33pge:lectures:recursive1.py| recursive1}} {{ :courses:be5b33pge:lectures:recursive2.py | recursive2}} {{ :courses:be5b33pge:lectures:recursive3.py | recursive3}} | | **7.** | 30.3. | Trees and recursion II, backtrack | {{ :courses:be5b33pge:lectures:adttree2.py |ADT tree 2}}, {{ :courses:be5b33pge:lectures:adttreeexample.py | tree training example}} | | **8.** | 6.4. | Python application libraries Numpy, Matplotlib, Scipy with examples of use | {{ :courses:be5b33pge:lectures:numpy0.py | numpy example}} {{ :courses:be5b33pge:lectures:matplotlib0.py | display with mathplotlib }} {{ :courses:be5b33pge:lectures:climate1b.py | display climate data }} {{ :courses:be5b33pge:lectures:climate_data.zip | climate data files}} | | **9.** | 13.4. | //moved to lecture 11 27.4.// | | | **10.** | 20.4. | Abstract Data Types (ADT) -- stack, queue, tree -- and their implementation | {{ :courses:be5b33pge:lectures:adt.pdf | stack, queue,tree - slides }}\\ {{ :courses:be5b33pge:lectures:adtqueue.py | ADT queue }} {{ :courses:be5b33pge:lectures:adtstack.py | ADT stack}} {{ :courses:be5b33pge:lectures:adttree.py | ADT tree }} {{ :courses:be5b33pge:lectures:adtqueuec.py | cyclic queue }} {{ :courses:be5b33pge:lectures:adttreeextnd.py | ADT tree extended examples}} | | **11.** | 27.4. | Processing Internet data sources | {{ :courses:be5b33pge:lectures:csv0.py | csv0}}, {{ :courses:be5b33pge:lectures:csv1.py | csv1}}, {{ :courses:be5b33pge:lectures:csv2.py | csv2}}, {{ :courses:be5b33pge:lectures:csv3.py |}}, {{ :courses:be5b33pge:lectures:scatterplot.py | matplotlib }} , [[https://www.gapminder.org/data/|Gapminder data source]], [[https://www.kaggle.com/datasets/sudalairajkumar/undata-country-profiles?resource=download|Kaggle data source]] | | **12.** | 4.5. | Programming repetitions sorting searching, trees, recursion | check also previous examples above \\ {{ :courses:be5b33pge:lectures:recursive_101.py | recursion short repetition }} \\ {{ :courses:be5b33pge:lectures:adttreeexample2.py | Tree Examples 2}}, {{ :courses:be5b33pge:lectures:adtreeexample2a.py | Tree Examples 2a}}, {{ :courses:be5b33pge:lectures:adttreeexample3.py | Tree Examples 3}},{{ :courses:be5b33pge:lectures:adttreeexample4.py | Tree Examples 4}} \\ [[https://cw.felk.cvut.cz/courses/a4b33alg/task.php?task=searchnodes|search nodes problem]] , {{ :courses:be5b33pge:lectures:searchnodes.py | solution}} \\ [[https://cw.felk.cvut.cz/courses/a4b33alg/task.php?task=sumleaves_py|Sum of Leaves Keys]] {{ :courses:be5b33pge:lectures:sumleaves.py | solution }} , [[https://cw.felk.cvut.cz/courses/a4b33alg/task.php?task=pary_py| Neighbour Pairs]], {{ :courses:be5b33pge:lectures:pary.py | solution }} | | **13.** | 11.5 | // University Sports Day // . | //classes suspended// | | **14.** | 18.5 | Repetitions and exam examples | {{ :courses:be5b33pge:lectures:examples2021.pdf | set 1 }}, {{ :courses:be5b33pge:lectures:examtrees.py | set 2}}, {{ :courses:be5b33pge:lectures:arrays.py | arrays_tasks}}, {{ :courses:be5b33pge:lectures:recbasic.py | recursion_tasks}} \\ Programming exam examples: \\ [[https://cw.felk.cvut.cz/brute/data/ae/release/2021l_be5b33pge/pge2021/evaluation/input.php?task=gallery_py|Gallery Guards]] \\ [[https://cw.felk.cvut.cz/brute/data/ae/release/2021l_be5b33pge/pge2021/evaluation/input.php?task=rectanglesarea|Rectangles area]] \\ [[https://cw.felk.cvut.cz/brute/data/ae/release/2020l_be5b33pge/pge2020/evaluation/input.php?task=cooppairs_py|Cooperating Robot Pairs]] \\ [[https://cw.felk.cvut.cz/brute/data/ae/release/2019l_be5b33pge/pge19/evaluation/input.php?task=secure|Secure Matrix Areas]] | | | | | | | **15.** | // not applied in 2022 // | Basics of User Interface, TKinter | {{ :courses:be5b33pge:lectures:codetk2.zip | all.zip}} {{ :courses:be5b33pge:lectures:win1.py | win1}} {{ :courses:be5b33pge:lectures:label1.py | label1}} {{ :courses:be5b33pge:lectures:label2.py | label2}} {{ :courses:be5b33pge:lectures:label3.py | label3}} {{ :courses:be5b33pge:lectures:button1.py | button1}} {{ :courses:be5b33pge:lectures:button2.py | button2}} {{ :courses:be5b33pge:lectures:button3.py | button3 }} {{ :courses:be5b33pge:lectures:button4.py | button4}} {{ :courses:be5b33pge:lectures:entry1.py | entry1 }} {{ :courses:be5b33pge:lectures:entry2.py | entry2}} {{ :courses:be5b33pge:lectures:entry3.py | entry3 }} {{ :courses:be5b33pge:lectures:combo1.py | combo1}} {{ :courses:be5b33pge:lectures:combo2.py | combo2}} {{ :courses:be5b33pge:lectures:checkbu1.py | checkbutton1 }} {{ :courses:be5b33pge:lectures:checkbu2.py | checkbutton2}} {{ :courses:be5b33pge:lectures:radio1.py | radio1 }} {{ :courses:be5b33pge:lectures:scroll1.py | scroll1}} {{ :courses:be5b33pge:lectures:scroll2.py |scroll2}} {{ :courses:be5b33pge:lectures:dialog1.py | dialog1}} {{ :courses:be5b33pge:lectures:calc1.py | calc1 }} | | **16.** | // not applied in 2022 // | Estimation of execution time of a code, asymptotic complexity. | {{ :courses:be5b33pge:lectures:lesson01_2021.pdf | asymptotic complexity}}, {{ :courses:be5b33pge:lectures:p01.py | nested loop examples }}, \\ also, consult the example codes in lesson 01 | **Notes** Lecture 2. [[https://www.cs.usfca.edu/~galles/visualization/Search.html|Binary search visualisation]] Lecture 11. [[https://www.gapminder.org/tools/#$model$markers$bubble$encoding$frame$value=1885;;;;;&chart-type=bubbles&url=v1|Gapminder data visualisation]] {{ :courses:be5b33pge:lectures:population_total.txt | population_total }}