Studying at the University of Verona
Here you can find information on the organisational aspects of the Programme, lecture timetables, learning activities and useful contact details for your time at the University, from enrolment to graduation.
Study Plan
This information is intended exclusively for students already enrolled in this course.If you are a new student interested in enrolling, you can find information about the course of study on the course page:
Laurea in Bioinformatica - Enrollment from 2025/2026The Study Plan includes all modules, teaching and learning activities that each student will need to undertake during their time at the University.
Please select your Study Plan based on your enrollment year.
1° Year
Modules | Credits | TAF | SSD |
---|
Mathematical analysis
2° Year activated in the A.Y. 2022/2023
Modules | Credits | TAF | SSD |
---|
1 module among the following
3° Year activated in the A.Y. 2023/2024
Modules | Credits | TAF | SSD |
---|
1 module among the following
Modules | Credits | TAF | SSD |
---|
Mathematical analysis
Modules | Credits | TAF | SSD |
---|
1 module among the following
Modules | Credits | TAF | SSD |
---|
1 module among the following
Modules | Credits | TAF | SSD |
---|
Legend | Type of training activity (TTA)
TAF (Type of Educational Activity) All courses and activities are classified into different types of educational activities, indicated by a letter.
Algorithms (2022/2023)
The teaching is organized as follows:
LABORATORIO DI PROGRAMMAZIONE II
Credits
6
Period
See the unit page
Academic staff
See the unit page
Learning objectives
The course aims at providing the fundamental methodological tools for the design and analysis of al-gorithms with emphasis on their employment in the solution of simple bioinformatics problems. The students will learn to implement basic algorithmic solution and fundamental data structures for solving problems in bioinformatics by employing object oriented programming. The course is structured on two modules: Algoritmi per Bioinformatica and Laboratorio di Programmazione II, which are detaled below. Module 1: The students will learn foundations of algorithm design and analysis. They will be able to model simple (real world) problems in terms of computational problems; to quantify the computational resources necessary to execute an algorithm, hence to compare different algorithmic solutions in terms of their computational cost. In particular, a student who has profitably attended the course, will be able to evaluate the applicability and effectiveness of basic algorithmic design techniques to simple computational problems. Module 2: The aim of this module is to provide the basic knowledge to implement fundamental algorithms using object oriented programming. The reference programming language is Java. The teaching methodology includes assisted software development and the implementation of specific projects focussed on applications that are relevant to bioinformatics. At the end of the course the student will be able to use the main data structures available in Java and develop new data structures for the implementation of specific software modules.
Prerequisites and basic notions
Knowledge of the fundamental concepts of discrete mathematics, probability calculus and graph theory. Sequences and series.
Resolution of the most important series. Concept of probability, space of events, random variables, probability distribution functions. Mean, variance. Independent random variables. Fundamental probability functions: uniform, geometric, Bernoulli, binomial and normal (Gaussian). Equations of recurrence. Graph, Directed graph, Degree of node and graph, Path, Weighted path, Cycle. Tree, rooted tree, binary tree.
Knowledge of the fundamental concepts of programming:
Basic scalar types: integer, decimal (scientific notation), character, boolean
Concept of variable and parameter. Array.
Instructions: assignment, IF, FOR and WHILE loops.
Procedures, Functions, Procedure Call, Parameter Passing by Value and by reference.
Recursive procedures.
Bibliography
Criteria for the composition of the final grade
There is only one assessment for both modules.
The exam verifies that the students have acquired sufficient confidence and skill in: the use of basic algorithmic design, algorithmic analysis tools, and Java implementation of algorithms. The exam consists of a written test with multiple-choices and open questions. The multiple-choices exercises are meant to evaluate the student's knowledge of classical algorithms, analysis tools, and the basic knowledge of Java. Open exercises test are meant to evaluate the ability of students to model "new" toy problems, design and analyse algorithmic solutions for it, and implement the algorithm solution in Java.