====== Year 2020-2021 ====== [[http://pages.di.unipi.it/grossi/|Prof. Roberto Grossi]] [[http://webhost.services.iit.cnr.it/staff/filippo.geraci/|Dr. Filippo Geracii]] ==== Announcements ==== Lectures will be given in **streaming** on [[https://teams.microsoft.com/l/team/19%3afdeae7db7ed94547ae13a8747d873a7a%40thread.tacv2/conversations?groupId=fcf12c45-c2e5-4a96-a32b-0428b63a58b8&tenantId=c7456b31-a220-47f5-be52-473828670aa1|Microsoft Teams]]. ==== Schedule ==== * Class hours: Tue 14:00‑15:45, Wed 11:00‑12:45, Fri 11:00‑12:45 * Office hours: remotely by appointment. ==== Overview ==== The advanced nature of this course focuses on developing algorithmic design skills, exposing the students to complex problems that cannot be directly handled by standard libraries (being aware that several basic algorithms and data structures are already covered by the libraries of modern programming languages), thus requiring a significant effort in problem solving. These problems involve all basic data types, such as integers, strings, (geometric) points, trees and graphs as a starting point. The syllabus is structured to highlight the applicative situations in which the corresponding algorithms can be successfully employed, making references to software applications and libraries. The level of detail in each argument can change year-by-year, and will be decided according to requests coming from other courses in the curriculum and/or specific issues arising in, possibly novel, applicative scenarios. ==== Exams ==== //Written exam:// - choose one of the topics discussed in class - write a very short to-do list and ask the instructor for approval - if the instructor suggests some mods, modify the to-do list according to the instructor's comments and repeat step 2 - if the chosen topic and the to-do list are approved, expand the to-do list into a more detailed to-do list and repeat step 3 - make a written report in English and submit it to the instructor (recall to add at least 20% new content, when compared to what seen in class) - meet the instructor to read together the report and get some comments on it - make the necessary mods - use [[https://jupyterlab.readthedocs.io/en/stable/getting_started/installation.html|Jupyter Lab]] to prepare your report (so as to mix Markdown, LaTeX and Python code). More info inside Google Classroom. {{:magistraleinformatica:ad:ad_19:python_environment.png?400|Credits XKCD https://xkcd.com/1987/}} Suggested reading: [[http://www.ittc.ku.edu/~jsv/Papers/Vitwritingnotes.pdf|some useful tips for scientific writing in English]] (first two sections) by J.S. Vitter. //Oral exam:// topics discussed in class, please read the references in the notes. ==== Topics ==== * Please see the topics listed in [[https://unimap.unipi.it/registri/printregistriNEW.php?re=3319217:::&ri=9172|unimap log of the lectures (registro delle lezioni)]]. Handouts are are available in the MS Teams channel. == Activity in class == * The screen snapshots shown during the classes are available in the MS Teams channel. == Official forms for the course == * Access to [[https://unimap.unipi.it/registri/printregistriNEW.php?re=3319217:::&ri=9172|unimap log of the lectures (registro delle lezioni)]]. * Access to the [[https://esami.unipi.it/esami/|course evaluation form (questionario studenti)]].