• CARVALHO, Adelaide, Práticas de C# - Algoritmia e Programação Estruturada, FCA, 2010 CARVALHO, Adelaide, Práticas de C# - Programação Orientada por Objetos, FCA, 2011 CORMEN, Thomas, Algortimos, Teoria e prática, Editora Campus CLARK, Dan, Beginning C# Object-Oriented Programming, Apress, 2013 ROCHA, António M., A.; Análise da Complexidade de Algoritmos, FCA, 2014 VASCONCELOS, José Braga, Algoritmia e Estruturas de Dados, Centro Atlântico, 200  
  • IT for eCommerce
  • 6616
  • 18752
  • Algorithms and Data Structures
  • ISLA Gaia6616-18752
  • 1
  • 6
  • 0
  • 27
  • Não
  • Português
  • Inclusion of active learning methodologies Interactive exhibition Problem-based learning
  • Mandatory
  • Being able to analyze the complexity and efficiency of the most relevant algorithms; Being able to implement the most relevant data structures, namely arrays, matrices, lists, stacks, queues and trees; Use algorithmic techniques such as search, sorting; Understand and implement recursive programming techniques; Dominate the C # language.
  • 1. Algorithms and Data Structures Concepts Algorithm efficiency analysis Asymptotic notations   2. Dynamic Data Structures Vectors and Matrices Stacks, Queues, Lists Trees and Graphs Structure operations (Insert, change, delete and sort)   3. Sorting and Search Sort: Bubble Sort, Quick Sort, Selection Sort, Insertion Sort, Shell Sort, Merge Sort Search: sequential, binary, hashing Comparison of algorithms   4. Recursion Basic concepts Factorial Function, Fibonacci, Tail Recursion, Other Functions Classical problems of recursive functions   5. Implementation in C# Files, streams and serialization Error handling
  • Descrição dos instrumentos de avaliação (individuais e de grupo) ¿ testes, trabalhos práticos, relatórios, projetos... respetivas datas de entrega/apresentação... e ponderação na nota final.

    Exemplo:

    Descrição

    Data limite

    Ponderação

    Teste de avaliação

    Final do Semestre

    70%

    Portfolio (Trabalhos, Avaliação formativa e desafios)

    Final do Semestre

    30%

     

     

     

     

    Enunciado dos trabalho, orientações e template de relatório disponivel no Moodle

  • Semestral
  • Analyze the complexity of the main dynamic data structures: arrays, arrays, lists, stacks, queues. Study the main search and sort algorithms. Implement the structures and algorithms in C#.