Skip to content

cister-labs/alg2324

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

56 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Introduction and objectives

This course is about designing algorithms for computational problems, and how to think clearly about analyzing correctness and running time. The main goal is to provide the intellectual tools needed for designing and analyzing your own algorithms for new problems you need to solve in the future.

Learning outcomes and competences

Students should be able to understand the relationship between algorithm design, correctness proof and complexity analysis. Students should learn algorithmic techniques of general applicability and get to know some major algorithms in a few common domains. They will also obtain practical experience in applying generic algorithms to specific problems.

Syllabus

  • Algorithm Correctness
  • Complexity: worst/best-case analysis
  • Fundamentals of asymptotic analysis
  • Average-case and randomized algorithms
  • Recursive algorithms
  • Sorting algorithms
  • Amortized analysis
  • Graph traversals and Dynamic programming
  • Fundamentals of NP-completeness

Lectures

Literature

Main reference

Complementary Bibliography

Teaching methods and learning activities

Lectures; intermediate test (mandatory) and final test or final exam.

The lectures mix the presentation of new material (introducing concepts, main algorithms and some results) with interactive discussion of their application when solving real problems.

The homework focus is on practical application of algorithmic concepts, consolidating the learned material.

The final exam and intermediate tests (closed book), globally evaluates the knowledge acquired by the students.

Evaluation Type

Distributed evaluation with final exam

Assessment Components

designation Weight (%)
Exam 80,00
Test 20,00

Amount of time allocated to each course unit

designation Time (hours)
Home study 120,00
Attendance time 42,00
Total: 162,00

Eligibility for exams

All students will be admitted to the exams.

Calculation formula of final grade

  • (IT) intermediate mid-term test (mandatory) 20%

  • (FE) final exam: 80% (can be replaced by Tf)

  • (IE) improvement exam: can replace the final exam. Required IE >= 8.

1st Exam ("Normal") classification: C = max(FE,IE)0.8+ IT0.2 >= 9.5

2nd Exam ("Recurso") classification: C = max(FE0.8+IT0.2, FE) >= 9.5

Required FE >=8.

Classification improvement

By final exam.

Contact

The day and time for appointments is Friday afternoon (José Proença). Please email me the day before if you wish to meet. If you prefer you can also just send an email with your questions to José Proença, or we can try to book an online meeting.

About

Algorithms course @ Fac. Sciences of the Univ. Porto 2023/2024

Resources

Stars

Watchers

Forks