Mudanças entre as edições de "SCC-501(Diego Raphael)"
(→Slides) |
(→Slides) |
||
Linha 82: | Linha 82: | ||
* [[Media:SCC-601-Aula_13-Arvores.pdf | 1 - Árvores]] | * [[Media:SCC-601-Aula_13-Arvores.pdf | 1 - Árvores]] | ||
* [[Media:SCC-601-Aula_14-Árvores_binárias_de_busca.pdf | 2 - Árvores Binárias de Busca]] | * [[Media:SCC-601-Aula_14-Árvores_binárias_de_busca.pdf | 2 - Árvores Binárias de Busca]] | ||
+ | |||
+ | * [[Media:SCC-601-Programacao_Dinamica.pdf | Programação Dinâmica]] | ||
+ | <br> | ||
== Listas == | == Listas == |
Edição das 15h35min de 2 de dezembro de 2014
SCC0501 - Introdução à Ciência de Computação II
Professor: Diego Raphael Amancio (diego@icmc.usp.br)
Atendimento (com agendamento prévio por e-mail): segunda, das 14h às 16h
Estagiário PAE: Marcos Vinícius Campos Alves (marcos.vca@hotmail.com)
Atendimento PAE: Quarta-Feira das 21:00 as 23:00. Salas: 4-001 ou 1-116.
Índice
[ocultar]Programa
- Introdução de conceitos avançados em linguagem de programação estruturada.
- Análise de algoritmos: critérios de complexidade. Notação Assintótica. Análise do pior caso, melhor caso e caso médio.
- Paradigmas de Projeto de algoritmos (indução, recursividade, divisão e conquista).
- Algoritmos de ordenação (por inserção, seleção, partição) diretos e avançados.
- Algoritmos de busca (direta, seqüencial, indexada) em memória interna. Espalhamento (hashing).
Cronograma Preliminar (com datas de provas) * sujeito a alterações (atualizado em 31/07)
DATAS IMPORTANTES:
29/10 - Aula prática* (turma 1)
31/10 - Feriado
5/11 – Prova 2
7/11 – Aula prática* (turma 2)
- O exercício prático valerá +2 pontos. A entrega será considerada apenas se houver presença na turma correspondente.
Critério de avaliação
A avaliação se baseará em 3 provas, em (pelo menos) 2 trabalhos práticos obrigatórios a serem realizados durante o curso e em exercícios, valendo nota (até 1 ponto na prova).
A média final MF será dada por:
MF = 0.7 * MP + 0.3 MT, se MP e MT >= 5.0 MF = min(MP,MT), caso contrário
MP = (2 * P1 + 3 * P2 + 3 * P3) / 8 MT = média aritmética não ponderada dos trabalhos ME = valem até 1 ponto adicional na prova
Além da nota, para aprovação, a USP exige freqüência mínima de 70% nas aulas.
Slides
Introdução
Análise de Algoritmos
- 1- Análise de Algoritmos
- 2 - Análise de Algoritmos
- 2.1 - Algoritmo de Ordenação por Intercalação
- 3 - Análise de Algoritmos
Métodos de Ordenação
Métodos de Busca
Árvores - Este conteúdo não será cobrado em prova
Listas
- Lista 1 - Revisão Linguagem C e Recursividade
- Lista 2 - Análise de Algoritmos
- Lista 3 - Busca, Hashing e Programação Dinâmica
Trabalhos
- Trabalho I - Matrizes.
- Trabalho II - Pilha e Recursividade.
- Trabalho III - Quick-Sort Interativo
- Trabalho Substitutivo - Hashing
Aulas Práticas
Verifique sua turma para aula prática: Distribuição da turma para as aulas práticas.. Fique sempre atento a programação das aulas conforme o cronograma.
RunCodes
**ATENÇÃO**
Todos os alunos devem ter cadastro no sistema RunCodes. Leiam atentamente as instruções para evitar futuros problemas.
NOTAS
- Provas
Lembrando que as notas dos exercícios realizados em sala, juntamente com os exercícios realizados nas aulas práticas, são adicionados a nota da prova como ponto extra. Logo: Nota = (P + Extras).
Aviso: Revisão de prova na sala 1-116 nos horários de atendimento.
Notas - Prova I Notas - Prova II
- Trabalhos:
Algumas notas do Trabalho I foram modificadas devido a verificação de plágio.
Notas - Trabalho I Notas - Trabalho II
Bibliografia básica
- Ziviani, N. (2004). Projeto de Algoritmos com Implementações em Pascal e C. Editora Cengage Learning.
- Cormen, T.H.; Leiserson, C.E.; Rivest, R.L.; Stein, C. (2002). Algoritmos: Teoria e Prática. Editora Campus.
- Tenenbaum, A.M.; Langsam, Y.; Augenstein, M.J. (1995). Estruturas de Dados Usando C. Makron Books.
- Mizrahi, V.V. (2008). Treinamento em Linguagem C. Prentice Hall.