ALGORITHMS AND DATA STRUCTURES

DOMENICO FURNO ALGORITHMS AND DATA STRUCTURES

0212700138
DEPARTMENT OF MANAGEMENT & INNOVATION SYSTEMS
EQF6
BUSINESS MANAGEMENT
2024/2025



OBBLIGATORIO
YEAR OF COURSE 2
YEAR OF DIDACTIC SYSTEM 2023
SPRING SEMESTER
CFUHOURSACTIVITY
1272LESSONS
Objectives
THE COURSE AIMS TO INTRODUCE THE MAIN TOOLS FOR DATA ORGANIZATION AND PROJECT PLANNING EFFICIENT ALGORITHMS FOR DATA PROCESSING. THE STUDENT WILL ACQUIRE KNOWLEDGE RELATING TO THE ANALYSIS AND DESIGN OF EFFICIENT ALGORITHMS. THIS KNOWLEDGE HAS THE AIM OF UNDERSTANDING THE PROBLEMS THAT CAN EMERGE IN THE DESIGN OF EFFICIENT ALGORITHMS
APPROPRIATELY SELECT THE ALGORITHMIC TOOLS TO BE USED IN THE PRESENCE OF DIFFERENT APPLICATION SCENARIOS AND OPERATIONS
DEVELOP IN THE STUDENT AN ABILITY TO CRITICALLY EVALUATE THE PERFORMANCES EXHIBITED BY THE APPLICATIONS THAT USE THE
DESIGNED ALGORITHMS.
THE ALGORITHMIC TECHNIQUES PRESENTED IN CLASS WILL BE USED TO DEVELOP PYTHON PROGRAM SO THAT THE STUDENT WILL BE ABLE TO CRITICALLY EVALUATE THE VARIOUS TECHNIQUES IN PRACTICE.
SI USERA' IL LINGUAGGIO PYTHON COME LINGUAGGIO DI PROGRAMMAZIONE PER LO SVILUPPO DI PROGRAMMI CHE USANO LE TECNICHE ALGORITHMICHE PRESENTATE.
Prerequisites
NO SPECIFIC PREREQUISITE.
Contents
- OBJECT ORIENTED PROGRAMMING IN PYTHON - 12 HOURS
- ELEMENTARY DATA STRUCTURE AND THEIR IMPLEMENTATION IN PYTHON -- 10 HOURS
DEFINITION OF ALGORITHM. THE RAM MODEL -- 2 HOURS
- PSEUDO-CODE -- 2 HOURS
- RECURSION -- 6 HOURS
- ANALYSIS OF ALGORITHMS -- 6 HOURS
- SORTING ALGORITHM: INSERTION SORT, SELECTION SORT, MERGE SORT, RADIX SORT, COUNTING SORT -- 10 HOURS
- QUICKSORT -- 4 HOURS
- BINARY TREES -- 6 HOURS
- HASH TABLES -- 6 HOURS
- ALGORITHM DESIGN TECHNIQUES: GREEDY AND DYNAMIC PROGRAMMING -- 8 HOURS
Teaching Methods
LECTURES (72HOUR)
Verification of learning
THE EXAM CONSISTS OF A WRITTEN TEST IN WHICH THE STUDENTS WILL BE ASKED TO DESIGN AN ALGORITHM FOR A COMPUTATIONAL PROBLEM SIMILAR TO THE ONES DISCUSSED DURING THE COURSE AND TO APPLY ONE OF THE DISCUSSED ALGORITHMS TO A SPECIFIC SMALL INPUT. THE EXAM WILL TAKE PLACE AFTER THE COURSE IS FINISHED.
THE WRITTEN EXAMS WILL BE DISCUSSED WITH THE INSTRUCTORS.
THE AIM OF THE EXAM IS TO VERIFY THE ABILITY TO USE IN PRACTICE (THAT IS, BY PROGRAMMING) THE CONCEPTS DISCUSSED IN CLASS.
Texts
JOHN GUTTAG, INTRODUCTION TO COMPUTATION AND PROGRAMMING USING PYTHON, MIT PRESS.
REVISED AND EXPANDED EDITION -- AUG 2013
  BETA VERSION Data source ESSE3 [Ultima Sincronizzazione: 2024-12-13]