Contribution of the course to the overall degree programme goals
The course is one of the fundamental courses of the Bachelor's Degree in Informatics and provides an introduction to algorithms, namely the formalization of problems, the identification of computational solutions, and the analysis of such solutions, from the point of view of correctness and efficiency in the use of resources. Furthermore, fundamental data structures and basic techniques for the design and analysis of the algorithms will be presented.
Expected learning outcomes
Knowledge and understanding:
- knowledge and understanding of the fundamental algorithms and data structures;
- understanding and evaluation of the complexity of computational problems and the ability to select appropriate methods for modeling and solving them;
Ability to apply knowledge and understanding:
- logical-deductive and problem-solving skills;
- ability to formalize and implement solutions for real problems and identification of appropriate solution patterns.
- being able to formulate and argue solutions, also developing a critical approach to the evaluation of alternative solutions.
Knowledge of the basic concepts of discrete mathematics and calculus.
Algorithms, computation models and analysis techniques: Informal introduction to algorithms. Computation models. Asymptotic notation. Recurrences.
Fundamental techniques for algorithm design: Divide-and-conquer. Dynamic programming. Greedy algorithms.
Graph algorithms: Graph representations. Breadth-first and depth-first search. Minimum spanning trees (Kruskal, Prim). Shortest paths (Dijkstra, Bellman-Ford, Floyd-Warshall).
NP-complete problems: complexity classes P and NP. Polynomial reducibility and NP-completeness. Examples of NP-complete problems.
T. H. Cormen, C. E. Leiserson, R. L. Rivest, C. Stein.
Introduction to algorithms (3rd Edition), MIT Press, 2009.
C. Demetrescu, I. Finocchi, G. F. Italiano.
Algoritmi e strutture dati (seconda edizione), McGraw-Hill, 2008.
The exam consists in a written test and an oral test. The written test lasts 3 hours and it is divided into two parts. The first part consists of 3 questions to be solved in 30 minutes. These questions require a quick answer on topics covered in class and they are aimed at testing the acquisition of the basic concepts of the course. The second part consists of four exercises, some of which are intended to assess the skills acquired in solving computational problems by designing efficient algorithms, while others aim at testing the acquisition of knowledge provided by the lessons. The written test may be replaced by successful completion of two intermediate examinations, each lasting two hours and consisting of 3 exercises, with the same types of exercises of the second part of the written test.
During the written test is not allowed the use of books, notes, electronic media.
During the oral exam, the student must demonstrate to manage the topics presented in class and be able to expose them in a formal way.
The students are assigned exercises in C. The purpose is to implement data structures, design techniques and algorithms presented in class and do exercise on the calculation of complexity. Making such exercises allows to get a bonus.
Chalk lectures and slides (when needed).
Type of exam
written and oral
Last update of the programme: 15/07/2019
If you close the banner, only essential cookies will be automatically activated
Ca' Foscari University of Venice, as part of its institutional aims and in fulfillment of the obligations set forth in article 13 of the EU Regulation 2016/679 ("Regulation"), gives you information regarding the processing of personal data collected by cookies and/or similar technologies when you visit the www.unive.it website (“Website”). Cookies are small pieces of information that a website sends to the user’s device where it is automatically stored and then sent back to the same website or to a third party every time that the website is visited using the same device.
In this notice, the term “cookie” will mean cookies as defined above as well as any other similar tracking technology used in the Website.
1. Data Controller
The data controller is Ca' Foscari University of Venice, with headquarters in Dorsoduro n. 3246, 30123 Venice (VE), legally represented by the Rector pro tempore.
2. Data Protection Officer
The University has appointed a "Data Protection Officer" ("DPO"), who can be contacted by writing to the email address: firstname.lastname@example.org or to the following address: Ca' Foscari University, Venice, Data Protection Officer, Dorsoduro n. 3246, 30123 Venice (VE).
3. Types of cookies, data collect, purposes and legal basis
The cookies used on the website are (please refer to the cookie list for specific information on each cookie):
essential cookies: cookies that are necessary to support the login system and the access to the “Personal Area” of the Website as well as to remember users’ cookie preferences.
Personal data associated with these cookie is: user’s IP address, date and time of the visit, means of data transfer, requested resource, response, response size in byte, link connected to the user requesting the resource, user’s operating system, browser and device used. The legal basis for this processing activity is represented by art. 6.1.b) (“performance of a service asked by the data subject”) and art. 6.1.e) of the Regulation (“execution of a task of public interest or connected to the exercise of public powers''). Being the University is a public body and it is required to have a website where the users can find useful information on its activities (artt. 53 e 54 D.lgs. n. 82/2005). You can disable these cookies at any time by clicking on the “click here to change your cookie preferences” button, this action will only have an effect on the navigation of the Personal Area.
analytics cookies: cookies that collect aggregated and statistical data on the navigation of the Website aimed at measuring the number of visits for each page of the Websites as well as the performance and the usability of the Website. The analytics cookies used on the Website are “Web Analytics Italia” set by the Agenzia per l’Italia Digitale (AGID). Personal data associated with these cookies is: user’s IP address, date and time of the visit, means of data transfer, requested resource, response, response size in byte, link connected to the user requesting the resource, user’s operating system, browser and device used, number of pages visited, ecc. The legal basis for this processing activity is represented by art. 6.1.e) of the Regulation (“execution of a task of public interest or connected to the exercise of public powers''), as the University aims at collecting statistical data on the visits of its Website pages especially with regards to the pages of “Amministrazione Trasparente”. You can disable these cookies at any time by clicking on the “click here to change your cookie preferences” button, this action will have no effect on your navigation.
third party cookies (social media and profiling): these cookies are set by third parties that collect the data in order to analyze the navigation and the preferences of the users. On the website, there are cookies set by Facebook called Facebook-Pixel, aimed at collecting data to target promotional content to specific users, and by Google namely Google-Youtube that allow users to watch Youtube videos on the Website and the University to measure the performance of its communication campaigns. These cookies are managed by Facebook and Google respectively and the University only processes anonymous and statistical information collected by them, who act as joint controllers on the basis of the CJEU ruling n. C-210/16 (5 June 2018). The legal basis for this processing activity is represented by art. 6.1.a) of the Regulation (“consent of the data subject''). The first time you land on the Website, a banner pops up asking whether you consent to enable these cookies. If you do not consent or withdraw consent at a later time through the “click here to change your cookie preferences” button, this will have no effect on your navigation.
You can always manage your cookie preferences through the browser setting. If you disable all cookies, please note that some activities on the website will not be possible anymore (i.e. the ones on the pages accessible in the Personal Area). To find out more on how to manage cookies through browser settings, please visit:
The processing of personal data will be carried out by authorized employees (in compliance with Article 29 of the Regulation and art. 2-quaterdecies of D. lgs. 196/2003), with the use of computerized procedures, adopting appropriate technical and organizational measures to protect them from unauthorized or illegal access, destruction, loss of integrity and confidentiality, even if accidental in nature.
5. Data retention
For information on the retention period of each cookie, please refer to the list below.
6. Recipients and categories of recipients of personal data and data transfer outside the European Economic Area
For the purposes set out above, in addition to specifically authorized employees and collaborators of the University, personal data may also be processed by those who execute outsourced activities on behalf of the University in their capacity as data processors (the updated list is available at: https://www.unive.it/pag/36643/).
Personal data collected by third party cookies may be transferred outside the European Economic Area (EEA) in compliance with the provisions of the Regulation.
7. Data subjects rights and how to exercise them
As a data subject, you have the right to obtain from the University, in the cases provided for by the Regulation, the access, the rectification and the erasure of your personal data as well as ask for the limitation of the processing of your personal data or to object to the data processing itself (articles 15 and following of the Regulation). The request can be submitted, without any particular formal procedures, by contacting the Data Protection Officer directly at email@example.com or by sending a communication to the following address: Ca' Foscari University of Venice - Data Protection Officer, Dorsoduro 3246, 30123 Venice. Alternatively, you can contact the Data Controller, by writing a PEC (certified email) to firstname.lastname@example.org.
Data subjects, who believe that the processing of their personal data is in violation of the provisions of the Regulation, have the right to file a complaint with the Data Protection Authority, as provided for by art. 77 of the Regulation, or to take legal action (art. 79 of the Regulation).
Appendix on social media:
In addition to the privacy notice published at: www.unive.it/pag/29567, the University provides you with information on the processing of your personal data collected through its social media pages (Facebook, Instagram). In particular, the University only processes anonymous and statistical information collected by the social media providers, who act as joint controllers on the basis of the CJEU ruling n. C-210/16 (5 June 2018). Moreover, the University informs you that when you leave a comment or a post on its social media pages, it will process your data only to administer your request/comment.
Last updated: 27/07/2022
List of cookies
Last update of the list of cookies: 27/7/2022
They maintain the session data of the SingleSignOn.