Code: | CC2001 | Acronym: | CC2001 | Level: | 200 |
Keywords | |
---|---|
Classification | Keyword |
OFICIAL | Computer Science |
Active? | Yes |
Web Page: | http://www.dcc.fc.up.pt/~pribeiro/aulas/daa1415/ |
Responsible unit: | Department of Computer Science |
Course/CS Responsible: | Bachelor in Computer Science |
Acronym | No. of Students | Study Plan | Curricular Years | Credits UCN | Credits ECTS | Contact hours | Total Time |
---|---|---|---|---|---|---|---|
L:CC | 60 | Plano de estudos a partir de 2014 | 2 | - | 6 | 56 | 162 |
MI:ERS | 105 | Plano Oficial desde ano letivo 2014 | 2 | - | 6 | 56 | 162 |
To learn techniques for designing and analyzing algorithms.
Improving background on generic models of common problems and the algorithmic techniques for solving them. Practical experience in applying generic algorithms to specific problems. Competence in the asymptotic analysis of the running time of algorithms.
Students should know simple algorithms and data structures (for counting, searching and sorting) and a programming language (C/C++ or JAVA).
Algorithmic complexity: asymptotic analysis, recurrences, some complexity classes. Algorithm design techniques: divide and conquer, greedy algorithms, dynamic programming. Specialized data structure: priority queues, disjoint sets and balances search trees. Graph algorithms: breadth and depth first search, minimum spanning trees, shortest paths, maximum flow.
Regular lectures for exposing the program topics and discussing examples. Laboratory classes for solving exercise sheets and programming problems, like those found in programming contests, using known algorithms. Additional programming problems for homework (with automatic evaluation by Mooshak).
designation | Weight (%) |
---|---|
Exame | 80,00 |
Teste | 20,00 |
Total: | 100,00 |
designation | Time (hours) |
---|---|
Frequência das aulas | 0,00 |
Trabalho laboratorial | 0,00 |
Total: | 0,00 |
Students should fill out at least 80% of the weekly quizzes and should have a grade higher than zero in the programming test.
NP: programming test automatically graded by the Mooshak system (graded from 0 to 4, global weight 20%). Required NP>0.
F: two intermediate written tests (TE1 and TE2) or E: Final exam (weight 80%)
F = max(0.5*TE1 + 0.5*TE2). Required TE1 >= 6.0 and F >= 7.0
Final grade (1st exam) : C = max(E,F)*0.8+NP >= 9.5
Final grade (rebuttal) : C = E*0.8+NP >= 9.5
Along the semester there are two written tests and one programming test. The written tests and exams consist of generic questions plus questions about problems seen in the theoretical and laboratory classes. The programming test consists in the submission, using the Mooshak system, of solutions to problems seen in the laboratory classes, or slight variants. The programming test is mandatory.
The pratical test is compulsory for every student, regardless of special status of any kind.
Students approved in 2013/2014 must take the final exam and the programming test.