ALGORITHMS AND DATA STRUCTURES

Carlo BLUNDO ALGORITHMS AND DATA STRUCTURES

0212800008
DEPARTMENT OF ECONOMICS AND STATISTICS
EQF6
STATISTICS FOR BIG DATA
2024/2025

OBBLIGATORIO
YEAR OF COURSE 2
YEAR OF DIDACTIC SYSTEM 2018
AUTUMN SEMESTER
CFUHOURSACTIVITY
1060LESSONS
ExamDate
BLUNDO06/12/2024 - 11:00
BLUNDO06/12/2024 - 11:00
Objectives
THE CLASS AIMS AT INTRODUCING BASIC TOOLS AND TECHNIQUES TO ORGANIZE DATA AND TO DESIGN EFFICIENT DATA MANAGEMENT AND PROCESSING ALGORITHMS.

KNOWLEDGE AND UNDERSTANDING
THE CLASS INTENDS TO CONVEY BASIC KNOWLEDGE OF THE ISSUES ARISING IN THE DESIGN AND ANALYSIS OF EFFICIENT ALGORTIHMS. THE KNOWLEDGE ACQUIRED HAS THE OBJECTIVE OF ALLOWING THE STUDENT TO MASTER THE BASIC ISSUES TO THAT HE/SHE WILL BE ABLE TO SELECT THE ALGORITHMIC TOOLS TO USE IN DIFFERENT APPLICATION SCENARII. THE FINAL OBJECTIVE IS THUS TO EMPOWER THE STUDENT WITH THE CRITICAL TOOLS TO ANALYZE DIFFERENT ALGORITHMIC SOLUTIONS AND TO SELECT THE MOST APPROPRIATE FOR THE TASK AT HAND.


APPLYING KNOWLEDGE AND UNDERSTANDING
THE ACQUIRED KNOWLEDGE AIMS AT THE DEVELOPMENT OF MASTERING OF ALGORITHMIC TOOLS (BOTH FOR THE DESIGN AS WELL AS THE ANALYSIS) SO THAT THE STUDENT WILL BE ABLE TO USE THE RIGHT TOOL IN DIFFERENT APPLICATIONS (RANGING FROM DATA ANALYSIS TO THE DESIGN ON ONLINE SERVICES) AND THE ABILITY TO ASSESS THE PERFORMANCE OF THE ALGORITHMIC SOLUTION SELECTED IN RELATION TO THE NATURE OF THE DATA ON WHICH THEY WILL HAVE TO OPERATE.
Prerequisites
BASIC KNOWLEDGE ABOUT COMPUTER PROGRAMMING AND KNOWLEDGE OF THE PYTHON PROGRAMMING LANGUAGE AS THE DATA STRUCTURES AND THE ALGORITHMS WILL BE IMPLEMENTED IN PYTHON.
Contents
- OBJECT ORIENTED PROGRAMMING IN PYTHON (6 HOURS)
- DEFINITION AND IMPLEMENTATION IN PYTHON OF ELEMENTARY DATA STRUCTURES: VECTOR, STACK, QUEUE AND LIST (8 HOURS)
- ALGORITHMS' COMPUTATIONAL COMPLEXITY (4 ORE)
- DESIGN AND IMPLEMENTATION IN PYTHON OF SELECTION AND SORTING ALGORITHMS: INSERTION SORT, SELECTION SORT, ITERATIVE QUICKSORT, RADIX SORT, COUNTING SORT (10 HOURS)
- RECURSIVE FUNCTIONS (6 HOURS)
- RECURSIVE SORTING ALGORITHMS: QUICKSORT, MERGESORT, HEAPSORT (4 HOURS)
- RECURRENCE RELATION (4 HOURS)
- HASH TABLES (4 HOURS)
- STREAMING ALGORITHMS (4 HOURS)
- BLOOM FILTER (2 HOURS)
- ALGORITHM DESIGN TECHNIQUES: DIVIDE AND CONQUER, GREEDY, DYNAMIC PROGRAMMING (8 HOURS)
Teaching Methods
EACH COURSE MODULE REQUIRES 30 HOURS OF TEACHING BETWEEN LESSONS AND LABORATORY EXERCISES: 18 HOURS OF LESSONS IN THE CLASSROOM (3 CFU) AND 12 HOURS OF GUIDED EXERCISES IN LABORATORY (2 CFU). THE LABORATORY EXERCISES WILL BE ENHANCED BY CASE STUDIES. THE TEACHER WILL SUGGEST ADDITIONAL EXERCISES TO BE SOLVED BY STUDENTS WITH INDIVIDUAL STUDY. THE FREQUENCY OF CLASSROOM LECTURES AND LABORATORY EXERCISES IS NOT REQUIRED. TO OBTAIN FULL ACHIEVEMENT OF THE LEARNING OBJECTIVES FREQUENCY IS STRONGLY RECOMMENDED.
Verification of learning
THE ACHIEVEMENT OF THE OBJECTIVES OF TEACHING IS CERTIFIED BY PASSING AN EXAMINATION WITH AN ASSESSMENT OUT OF THIRTY. THE EXAM INCLUDES A WRITTEN TEST AND AN ORAL TEST. THE EVALUATION OF THE WRITTEN TEST WILL ACCOUNTS FOR 80%, WHILE THE INTERVIEW FOR THE REMAINING 20%. THE CUM LAUDE MAY BE GIVEN TO STUDENTS WHO DEMONSTRATE THAT THEY CAN APPLY THE KNOWLEDGE AUTONOMOUSLY EVEN IN CONTEXTS OTHER THAN THOSE PROPOSED IN THE COURSE.

THE WRITTEN TEST IS USED TO ASSESS THE CURRENT ABILITY OF THE STUDENT TO APPLY THE KNOWLEDGE ACQUIRED AND DEMONSTRATE COMPREHENSION SKILLS IN DEALING WITH A PRACTICAL PROBLEM IN PROGRAMMING, DESIGN AN ALGORITHMIC SOLUTION AND WRITE THE PROGRAM THAT SOLVES IT. THE WRITTEN TEST IS A PREREQUISITE FOR THE ORAL TEST
, AND REQUIRES THE ACHIEVEMENT OF PREDETERMINED MINIMUM SCOR (12 POINTS OUT OF 26). THE ORAL TEST IS USED TO ASSESS THE DEGREE OF ATTAINMENT OF THE LEARNING OBJECTIVES, PARTICULARLY REGARDING THE LEVEL OF KNOWLEDGE AND UNDERSTANDING AND COMMUNICATION ACHIEVED BY THE STUDENT
Texts
RANCE D. NECAISE
DATA STRUCTURES AND ALGORITHMS USING PYTHON
JOHN WILEY & SONS INC, 2011 - ISBN: 0470618299

DZEJLA MEDJEDOVIC, EMIN TAHIROVIC, AND INES DEDOVIC
ALGORITHMS AND DATA STRUCTURES FOR MASSIVE DATASETS
MANNING, ISBN 9781617298035
More Information
STUDENTS CAN FIND, ON THE COMPANION WEB SITE, ANNOUNCEMENTS, NEWS, TEACHING MATERIAL, SLIDES, LECTURES' CALENDAR, A SUMMARY OF THE ARGUMENTS TOUCHED IN CLASS, PROJECTS, HOME-WORKS, EXAM TESTS . THE WEB SITE IS AVAILABLE ON THE UNIVERSITY E-LEARNING PLATFORM (HTTP://ELEARNING.UNISA.IT) ACCESSIBLE TO STUDENTS USING THEIR OWN UNIVERSITY CREDENTIALS.
Lessons Timetable

  BETA VERSION Data source ESSE3 [Ultima Sincronizzazione: 2024-11-29]