Mudanças entre as edições de "SCC-603 2012"

De CoteiaWiki
(Avisos)
 
(98 revisões intermediárias por 2 usuários não estão sendo mostradas)
Linha 1: Linha 1:
''' SCC-603 - Algoritmos e Estruturas de Dados II ''' [[http://sistemas2.usp.br/jupiterweb/obterDisciplina?sgldis=SCC0603&nomdis=  ementa]]
+
''' SCC-603 --- Algoritmos e Estruturas de Dados II --- 1º Semestre 2012''' [[http://sistemas2.usp.br/jupiterweb/obterDisciplina?sgldis=SCC0603&nomdis=  ementa]]
  
  
 
'''Professora:''' Rosane Minghim (rminghim at icmc.usp.br)
 
'''Professora:''' Rosane Minghim (rminghim at icmc.usp.br)
  
Horário de atendimento: Quartas-feiras 15:30 às 18:30
+
Horário de atendimento: <span style="color:green">Sextas-feiras 15:00 às 18:00</span>
  
 
Sala: 4-206
 
Sala: 4-206
Linha 11: Linha 11:
 
'''Assistente PAE:''' Rafael Messias Martins (rmartins at icmc.usp.br)
 
'''Assistente PAE:''' Rafael Messias Martins (rmartins at icmc.usp.br)
  
Horário de atendimento: Segunda-feira 19:00 às 21:00
+
Horário de atendimento: <span style="color:green">Segunda-feira, 19:00 às 21:00</span>
  
Sala: 6-208
+
Sala: 3-009
 
 
---
 
 
 
Olá alunos, sejam bem-vindos!
 
  
  
Linha 23: Linha 19:
 
== Avisos ==
 
== Avisos ==
  
12/09: Notas da Rec / HORÁRIOS DA REVISÃO: Amanhã, 13, 16h-17h30min. Quarta, 14, 13h30min - 15h.
+
# [[Media:(Novo) p2.rar|Notas P2]]
 
+
# [[Media:(Novo) p3a.rar|Notas P3]]
 
+
# [[Media:(Novo) provas_B.rar|Notas e média de prova]]
 
+
# [[Media:(Novo) provas_final.rar|Notas atualizadas, adicionais, média e frequência, mesma senha do arquivo anterior]]
7151798  4,5
+
# Revisão de provas 2 e 3 dia 03/07, 10-12, sala 3-102 (ICMC - CAMPUS I)
 
+
# Revisão pode ser feita em outro dia também, até no início do próximo semestre.
 
+
# rec de prova na primeira semana de aula do próximo semestre. Data, hora (período noturno) e local a serem divulgados aqui.
7152503  3,0
+
# o aluno deve passar na rec de trabalho para fazer a rec de prova, no caso de quem ficou de rec nas duas modalidades (prova e trabalho)
 
 
 
 
7239090  5,0
 
 
 
 
 
7239339  4,25
 
 
 
 
 
7277482  3,75
 
 
 
 
 
7277583  4,0
 
 
 
 
 
7288950  2,75
 
 
 
 
 
 
 
-----
 
 
 
02/08: HORÁRIO DA PROVA HOJE: 19H. LOCAL DA PROVA HOJE: SALA 4-002.
 
-----
 
 
 
29/07: Notas atualizadas incluindo a média final.
 
-----
 
11/07:  
 
 
 
A)  '''Regras da Recuperação'''
 
 
 
# Quem ficou de recuperação (Média >= 3,0) por causa do trabalho (MT < 5,0), refazer o trabalho para o qual teve a menor nota (apenas 1 deles) e entregar para o Fernando, por e-mail até '''28/07'''.
 
# Quem ficou de recuperação (Média >= 3,0) por causa de prova (MP <5,0), fazer apenas a prova de recuperação.
 
# Quem ficou de recuperação (Média >= 3,0) por causa dos dois (prova E trabalho), fazer o trabalho para o qual teve a menor nota (apenas 1 deles - entrega '''28/07''') e fazer também a prova de recuperação.
 
 
 
B) Data da prova de recuperação:  '''02/08'''. Só será corrigida a prova de recuperação daqueles que tiveram média em trabalho ou tiverem nota maior ou igual a 5,0 no trabalho de recuperação.
 
 
 
C) Horário da prova de recuperação: '''19h. Local a ser divulgado.'''
 
 
 
Observação: Caso o T1 seja a menor nota, o mesmo será avaliado pelo SQTPM.
 
 
 
* Havia um erro atribuído no peso das notas das provas que compunham a média geral. A partir das 15:00 as notas estarão atualizadas aqui no Wiki.
 
----
 
10/07: Estão disponíveis todas as notas das provas e trabalhos (resta apenas a composição da média dos trabalhos e a média geral).
 
----
 
09/07: Estão disponíveis as notas das provas e do T1.
 
-----
 
08/07: Pizza da roda à baiana: Quem estiver enrolado pra terminar o trabalho tem '''até às 08:00 de amanhã''' (09/07) pra me (Fernando) enviar o T3 '''por e-mail'''. Pretendo começar a corrigir os trabalhos pelo período da manhã.
 
----
 
03/07: Sobremesa: Adiamento do T3 para sexta-feira, dia '''08/07'''.
 
-----
 
22/06:
 
#Cada aluno deverá enviar ao estagiário PAE um arquivo compactado ("zipado") contendo '''um caso de teste''' que o próprio aluno utilizou nos testes do trabalho (o caso de teste é o mesmo para ambos os trabalhos). ATENÇÃO: ENVIAR APENAS '''UM E SOMENTE UM''' E-MAIL CONTENDO ISSO, E O ASSUNTO DO E-MAIL DEVERÁ SER: '''NúmeroUSP - T2 e T3'''.
 
#''' Colher de Chá''': Não haverá mais entrevistas quanto ao T2 (também). O mesmo será corrigido por conta própria do estagiário PAE.
 
-----
 
21/06:
 
#'''Notas da P2''' divulgadas em "Notas".
 
#Slides adicionados...
 
-----
 
20/06: '''Mudança na correção dos T2 e T3'''. Haverá apenas entrevista do T2 e será no dia 29/06 no período da manhã e tarde. Ainda será definida a hora certa e os alunos em tais horários. O T3 não precisará mais de entrevista. A correção do T3 será por conta própria do estagiário PAE (a entrega do T3 mantém-se a mesma, dia 03/07).
 
-----
 
16/06: A data de apresentação do T2 e T3 se dará no dia '''05/07''' no período da manhã e tarde (ainda a ser definido o horário certo e local).
 
------
 
13/06  Exercícios para a aula de quinta-feira
 
[[Media:(Novo) BmaisExercicio.pdf|Árvores B+ Exercício]]
 
------
 
12/06: '''Trabalho 3''' adicionado.
 
------
 
10/06: Exercícios para a próxima aula
 
 
 
 
 
A - Para a árvore-B com m=4 e com os seguintes nós:
 
 
 
(10-20) (5-7-9) (13-15-18) (32-35-38)
 
 
 
1 -  Responda: qual a taxa de ocupação?
 
 
 
2 - Realize as seguintes operaçoes:
 
 
 
2.1  Elimine 10; 2.2 Elimine 5; Elimine 15, 18 e 13;  Elimine 7.
 
 
 
 
 
  
B - Para a árvore-B com m=5 e com os seguintes nós:
+
=== Sobre a Rec. dos Trabalhos (RT) ===
  
(G-M-P-X) (A-C-D-E) (J-K) (N-O) (R-S-T-U-V) (Y-Z)
+
# A média dos trabalhos (MT) será calculada sobre os 3 trabalhos com maior nota (o trabalho de menor nota será descartado).
 
+
# Poderá fazer a RT quem ficar com 3.0 <= MT < 5.0
Realize as seguintes operações:
+
# Durante a RT será liberado o acesso para cada trabalho x cuja nota NTx < 5.0
 
+
# O objetivo da RT é conseguir nota >= 5.0 para cada NTx
1 - Insere B;  2 - Insere Q;  3 - Insere F;
+
## Caso os 4 trabalhos tenham NTx < 5.0, será apenas necessário resolver 3
 
 
4 - Elimine chaves de forma a produzir os 5 possíveis casos de eliminação (fora da folha, underflow com redistribuição, underflow com concatenação, underflow com propagação para os níveis superiores, eliminação sem underflow).
 
 
 
-----
 
31/05: As notas do T1 foram atualizadas.
 
-----
 
30/05:
 
#As notas do T1 já estão disponíveis (lá embaixo).
 
#O segundo trabalho já está disponível.
 
#O monitor Diego estará na aula das 14:00 para tirar dúvidas referentes ao exercício de Arquivo/Índice postado na Lista 12.
 
----
 
27/05:
 
# As notas da P1 já estão disponíveis.
 
# A '''Prova 2''' foi adiada para '''02/06''' começando às '''13:30''' até às 16:00.
 
# Foi adicionado um arquivo de exercícios sobre índices ('''Lista 12''') nas lista respectiva.
 
# Foi adicionado um arquivo de slides ('''10''') sobre um resumo do assunto da P2.
 
# Não haverá monitoria na quarta-feira ('''01/06'''), pois o PAE estará fora de São Carlos e voltará só no período da noite, E pronto pra aplicar a prova no dia seguinte. A monitoria do Diego ocorre normalmente.
 
----
 
19/05: Simulador do Replacement Selection (usando Heap): http://ccism.pc.athabascau.ca/html/lo/repos/comp272/applets/replacement/index.html
 
----
 
08/05: Foi adicionado na seção trabalhos um auxílio quanto a manipulação de arquivos na linguagem C.
 
----
 
06/05: O Trabalho 1 foi adiado para '''11/05'''.
 
----
 
02/05: Já está funcionando o SQTPM para envio dos trabalhos.
 
----
 
30/04:
 
# Está disponibilizado o "cronograma e avalição" do curso na seção a que se refere.
 
# O trabalho 1 foi adiado para o dia '''08/05'''.
 
# Há a '''Lista 5''' para resolver para a aula de segunda-feira na seção '''Listas de Exercícios'''.
 
----
 
12/04: Já está disponível o Trabalho 1 na seção '''Trabalhos'''.
 
----
 
 
 
02/04: O Wiki está com problema para upload de arquivo. A '''lista 2''' não está disponível. Eu repassei o arquivo para o aluno Rafael Paravia. Por favor, se você ainda não tem, fale comigo ou com ele.
 
Fernando
 
----
 
 
 
31/03: Embora não haja aula, o PAE Fernando estará presente para tirar dúvidas.
 
 
 
----
 
Os exercícios da '''lista 1'''
 
 
 
- 11, 14 e 17: Diego.
 
 
 
- 15, 16 e 18: Fernando.
 
 
 
serão realizados nas monitorias se houver procura pelas tais.
 
 
 
== Informações da Disciplina ==
 
 
 
--'''''SCC-203 - Algoritmos e Estruturas de Dados II'''''--
 
 
 
'''Professora:''' Rosane Minghim (rminghim at icmc.usp.br). Atendimento: 3ª feira->12h às 13h & 6ª feira->16h às 18h->sala 4-206.
 
 
 
'''PAE:''' Fernando Zuher (fernando at icmc.usp.br). Atendimento: 4ª feira->16h às 18h->prédio 5 (CISC)->2º andar->lab 6-206->BIOCOM.
 
 
 
'''Monitor:''' Diego Silva (diego.fsilva at gmail.com). Atendimento: 2ª feira->21h às 23h->3-00X.
 
 
 
'''''Obs: Por favor, envie um e-mail ao Fernando (até às 15:00) e/ou ao Diego (até às 19:00) pra informar se você irá ou não.'''''
 
 
 
*at = "arroba"
 
  
 
== Cronograma e Critérios de Avaliação ==
 
== Cronograma e Critérios de Avaliação ==
  
--[[Media:Cronograma e Avaliação, SCC203-2011.pdf|Cronograma e Avaliação, SCC203-2011]]
+
[[Media:(Novo)Cronograma.pdf|Cronograma e Avaliação]]
  
 
== Material Didático ==
 
== Material Didático ==
  
# [[Media:(Novo) Arquivo 01 - Introdução a Grafos.pdf|Arquivo 01 - Introdução a Grafos]]
+
# [[Media: Grafos1_Rosane_2012.pdf|Arquivo 01 - Introdução a Grafos (Revisado)]]
# [[Media:(Novo) Grafos2_Rosane_2011.pdf|Arquivo 02 - Grafos Algoritmos]]
+
# [[Media: Grafos2_Rosane_2012.pdf|Arquivo 02 - Grafos Algoritmos (Revisado)]]
 +
# [[Media: Grafos_Caminhos_Graça_Rosane_2012.pdf|Grafos - Caminhos (complementar)]]
 
# [[Media:(Novo) floyd-warshall.pdf|Arquivo 03 - Grafos Caminhos Mínimos]]
 
# [[Media:(Novo) floyd-warshall.pdf|Arquivo 03 - Grafos Caminhos Mínimos]]
# [[Media:Arquivo_04_-_Organização_de_Arquivos_-_Folk_Cap._4.pdf‎|Arquivo 04 - Organização de Arquivos - Folk Cap. 4]]
+
# [[Media:scc603-2012-04_organizacao_de_arquivos.pdf‎|Arquivo 04 - Organização de Arquivos (Revisado)]]
# [[Media:Arquivo 05 - Fundamentos de Arquivos.pdf‎|Arquivo 05 - Fundamentos de Arquivos]]
+
# [[Media:scc603-2012-05_fundamentos_de_arquivos.pdf‎|Arquivo 05 - Fundamentos de Arquivos (Revisado)]]
# [[Media:Arquivo 06 - Armazenamento Secundário, parte 1 (Cap. 3).pdf‎|Arquivo 06 - Armazenamento Secundário, parte 1 (Cap. 3)]]
+
# [[Media:scc603-2012-fundamentos_exemplos.tar.gz‎|Fundamentos de Arquivos: Códigos-exemplo (complementar)]]
# [[Media:Arquivo 07 - Armazenamento secundário, parte 2 (Cap. 3).pdf‎|Arquivo 07 - Armazenamento secundário, parte 2 (Cap. 3)]]
+
# [[Media:scc603-2012-06_armazenamento_secundario-1.pdf‎‎|Arquivo 06 - Armazenamento Secundário, parte 1 (Revisado)]]
# [[Media:Arquivo 08 - Índices - Cap. 5.pdf‎|Arquivo 08 - Índices - Cap. 5]]
+
# [[Media:scc603-2012-07_armazenamento_secundario-2.pdf‎|Arquivo 07 - Armazenamento secundário, parte 2 (Revisado)]]
# [[Media:Arquivo 09 - Processamento Cosequencial.pdf‎|Arquivo 09 - Processamento Cosequencial]]
+
# [[Media:scc603-2012-08_processamento_cosequencial.pdf‎‎|Arquivo 08 - Processamento Cosequencial (Revisado)]]
# [[Media:Arquivo 10 - Temas para a Prova 2.pdf‎|Arquivo 10 - Temas para a Prova 2]]
+
# [[Media:Arquivo 08 - Índices - Cap. 5.pdf‎|Arquivo 09 - Índices - Cap. 5]]
 
# [[Media:Arquivo 11 - Árvores B, parte 1.pdf‎|Arquivo 11 - Árvores B, parte 1]]
 
# [[Media:Arquivo 11 - Árvores B, parte 1.pdf‎|Arquivo 11 - Árvores B, parte 1]]
 
# [[Media:Arquivo 12 - Árvores B, parte 2.pdf‎|Arquivo 12 - Árvores B, parte 2]]
 
# [[Media:Arquivo 12 - Árvores B, parte 2.pdf‎|Arquivo 12 - Árvores B, parte 2]]
Linha 207: Linha 62:
 
== Trabalhos ==
 
== Trabalhos ==
  
- 12/04: [[Media:(Trabalho 1.pdf| Trabalho 1]]
+
O envio dos trabalhos será feito pelo [http://143.107.232.141/cgi-bin/rmartins/sqtpm.pl  SQTPM].
 
 
- 30/05: [[Media:Trabalho 2.pdf| Trabalho 2]]
 
  
- 12/06: [[Media:Trabalho 3.pdf| Trabalho 3]]
+
* [[Media: scc0603_2012_trab0.pdf|Trabalho 0 - Demonstração do SQTPM]]
 +
* [[Media: scc0603_2012_trab1_a.pdf|Trabalho 1 - Menores Caminhos (Atualizado)]]
 +
** Prazo: 15/05 (Podem continuar submetendo; desconto de 0,5 ponto por dia)
 +
* [[Media: scc0603_2012_trab2_c.pdf|Trabalho 2 - Betweenness (Atualizado)]]
 +
** Prazo: 21/05
 +
* Dicas:
 +
** Cuidado com a memória!
 +
*** Não dupliquem vértices com dados, por exemplo o nome. Cada vértice só deve ter UMA cópia na memória a qualquer momento. Sempre que tiverem que referenciar esse vértice (numa aresta, por ex., ou numa lista de predecessores), usem um ponteiro ou um "id" inteiro, por ex.
 +
*** Cuidado com alocação dinâmica; não se percam pelo mar de ponteiros que vocês mesmo criam. Gerenciem cada ponteiro com cuidado.
 +
*** Lembrem-se: quando vocês tem informação prévia do tamanho da lista (e esse tamanho não muda), um array é muito melhor que uma lista encadeada. Ou seja: tendo o número N de vértices, porque não alocar um array de N posições e atribuir um "id" de 0 a N-1 para cada vértice? Assim vocês poderão acessar qualquer vértice em tempo O(1) com "array[id]".
 +
** Cuidado com o tempo!
 +
*** Evitem buscas completas no grafo se não for estritamente necessário. Se você precisa fazer uma busca linear no grafo toda vez que um vértice é referenciado, algo está errado no seu algoritmo (ver dica anterior sobre o array).
 +
*** Não usem campos como nome (string) para o "id" do vértice. Operações com strings não são eficientes e são complicadas de usar em C, devido à alocação dinâmica. Evitem ao máximo manipulação de strings nesse contexto.
 +
* [[Media: scc0603_2012_trab3a.pdf|Trabalho 3 - Índices]]
 +
* [[Media: scc0603_2012_trab4a.pdf|Trabalho 4 - Árvore B]]
  
*Manipulação de arquivos em C: [[Media:manipulacao_arquivos.pdf| Manipulação de arquivos em C]]
+
== Exercícios de Aula ==
  
 +
# [[Media: SCC603_2012-1_ex1.pdf|Exercício 1 (05/03/12)]]
  
Envio dos trabalhos pelo [http://lcadfs2.lcad.icmc.usp.br/cgi-bin/fernando/sqtpm.pl  SQTPM]
+
# [[Media: SCC603_2012-1_ex2.pdf|Exercício 2 (20/03/12)]]
  
 
== Listas de Exercícios ==
 
== Listas de Exercícios ==
  
# [[Media:Lista 1 - Rosane 2011.pdf‎|Lista 1 - Conceitos sobre Grafos]]
+
# [[Media:scc603_2012-1_lista1.pdf|Lista de Exercícios 1]]
# [[Media:Lista 2 - Problemas utilizando Grafos.pdf|Lista 2 - Problemas utilizando Grafos]]
+
# [[Media:scc603_2012-1_lista2.pdf|Lista de Exercícios 2]]
# [[Media:Lista 3 - Algoritmos para manipulação de grafos.pdf|Lista 3 - Algoritmos para manipulação de grafos]]
+
# [[Media:scc603_2012-1_lista3.pdf|Lista de Exercícios 3]]
# [[Media:Lista 4 - Processamento Cosequencial.pdf|Lista 4 - Processamento Cosequencial]]
+
# [[Media:scc603_2012-1_lista4.pdf|Lista de Exercícios 4]]
# [[Media: ExerccicioArquivoIndice_1.pdf |Lista 5 - Arquivos/Índices, exercícios para a aula de "segunda-feira"]]
+
# [[Media:scc603_2012-1_lista5.pdf|Lista 5 - Processamento Cosequencial]]
# [[Media:Lista 6 - Estrutura de Arquivos.pdf|Lista 6 - Estrutura de Arquivos]]
+
# [[Media:scc603_2012-1_lista6.pdf|Lista 6 - Estruturas de Arquivos]]
# [[Media:Lista 7 - Fundamentos de Arquivos.pdf|Lista 7 - Fundamentos de Arquivos]]
 
# [[Media:Lista 8 - Armazenamento Secundário.pdf|Lista 8 - Armazenamento Secundário]]
 
# [[Media:Lista 9 - Índices.pdf|Lista 9 - Índices]]
 
# [[Media:Lista 10 - Árvores B.pdf|Lista 10 - Árvores B]]
 
# [[Media:Lista 11 - Hashing.pdf|Lista 11 - Hashing]]
 
# [[Media:Lista 12 - Arquivo, Índice.pdf|Lista 12 - Arquivo, Índice]]
 
 
 
''' Atenção: pode não representar a matéria toda - estude pelos livros...'''
 
  
 
== Notas ==
 
== Notas ==
 
+
# [[Media:(Novo) p2.rar|Notas P2]]
- [[Media:SCC203 - Notas.pdf|SCC203 - Notas]]
+
# [[Media:(Novo) p3a.rar|Notas P3]]
 +
# [[Media:(Novo) provas_B.rar|Notas e média de prova]]
 +
# [[Media:Scc603_2012_notas_trabalhos.pdf|Notas dos Trabalhos]]
 +
* Atenção: no Trabalho 3 houve diversos problemas com trabalhos copiados. Para mais detalhes procure o estagiário PAE.
  
 
== Sugestões de leitura ==
 
== Sugestões de leitura ==
  
 
Livro: Como passar em provas e concursos.
 
Livro: Como passar em provas e concursos.
 +
* Autor: William Douglas.
 +
* Link: http://bit.ly/y98WhW
 +
 +
Livro: Data Structures and Algorithms in C++/Java
 +
* Autores: M. T. Goodrich e R. Tamassia
 +
* Link: http://ww0.java4.datastructures.net/
 +
 +
Livro: Projeto de Algoritmos
 +
* Autor: N. Ziviani
 +
* Link: http://www.dcc.ufmg.br/algoritmos/
  
*Autor: William Douglas.
+
Livro: Introduction to Algorithms
Link: http://www.livrariaconcursar.com.br/#display=default&container=content&module=jpf_ec_product&view=show_all&id_product=1422
+
* Autores: T. H. Cormen, C. E. Leiserson e R. L. Rivest
 +
* Link: http://mitpress.mit.edu/algorithms/

Edição atual tal como às 15h29min de 6 de julho de 2012

SCC-603 --- Algoritmos e Estruturas de Dados II --- 1º Semestre 2012 [ementa]


Professora: Rosane Minghim (rminghim at icmc.usp.br)

Horário de atendimento: Sextas-feiras 15:00 às 18:00

Sala: 4-206


Assistente PAE: Rafael Messias Martins (rmartins at icmc.usp.br)

Horário de atendimento: Segunda-feira, 19:00 às 21:00

Sala: 3-009


Avisos

  1. Notas P2
  2. Notas P3
  3. Notas e média de prova
  4. Notas atualizadas, adicionais, média e frequência, mesma senha do arquivo anterior
  5. Revisão de provas 2 e 3 dia 03/07, 10-12, sala 3-102 (ICMC - CAMPUS I)
  6. Revisão pode ser feita em outro dia também, até no início do próximo semestre.
  7. rec de prova na primeira semana de aula do próximo semestre. Data, hora (período noturno) e local a serem divulgados aqui.
  8. o aluno deve passar na rec de trabalho para fazer a rec de prova, no caso de quem ficou de rec nas duas modalidades (prova e trabalho)

Sobre a Rec. dos Trabalhos (RT)

  1. A média dos trabalhos (MT) será calculada sobre os 3 trabalhos com maior nota (o trabalho de menor nota será descartado).
  2. Poderá fazer a RT quem ficar com 3.0 <= MT < 5.0
  3. Durante a RT será liberado o acesso para cada trabalho x cuja nota NTx < 5.0
  4. O objetivo da RT é conseguir nota >= 5.0 para cada NTx
    1. Caso os 4 trabalhos tenham NTx < 5.0, será apenas necessário resolver 3

Cronograma e Critérios de Avaliação

Cronograma e Avaliação

Material Didático

  1. Arquivo 01 - Introdução a Grafos (Revisado)
  2. Arquivo 02 - Grafos Algoritmos (Revisado)
  3. Grafos - Caminhos (complementar)
  4. Arquivo 03 - Grafos Caminhos Mínimos
  5. Arquivo 04 - Organização de Arquivos (Revisado)
  6. Arquivo 05 - Fundamentos de Arquivos (Revisado)
  7. Fundamentos de Arquivos: Códigos-exemplo (complementar)
  8. Arquivo 06 - Armazenamento Secundário, parte 1 (Revisado)
  9. Arquivo 07 - Armazenamento secundário, parte 2 (Revisado)
  10. Arquivo 08 - Processamento Cosequencial (Revisado)
  11. Arquivo 09 - Índices - Cap. 5
  12. Arquivo 11 - Árvores B, parte 1
  13. Arquivo 12 - Árvores B, parte 2
  14. Arquivo 13 - Árvores B, parte 3
  15. Arquivo 14 - Árvores B, parte 4
  16. Arquivo 15 - Árvores B+
  17. Hashing

Trabalhos

O envio dos trabalhos será feito pelo SQTPM.

  • Trabalho 0 - Demonstração do SQTPM
  • Trabalho 1 - Menores Caminhos (Atualizado)
    • Prazo: 15/05 (Podem continuar submetendo; desconto de 0,5 ponto por dia)
  • Trabalho 2 - Betweenness (Atualizado)
    • Prazo: 21/05
  • Dicas:
    • Cuidado com a memória!
      • Não dupliquem vértices com dados, por exemplo o nome. Cada vértice só deve ter UMA cópia na memória a qualquer momento. Sempre que tiverem que referenciar esse vértice (numa aresta, por ex., ou numa lista de predecessores), usem um ponteiro ou um "id" inteiro, por ex.
      • Cuidado com alocação dinâmica; não se percam pelo mar de ponteiros que vocês mesmo criam. Gerenciem cada ponteiro com cuidado.
      • Lembrem-se: quando vocês tem informação prévia do tamanho da lista (e esse tamanho não muda), um array é muito melhor que uma lista encadeada. Ou seja: tendo o número N de vértices, porque não alocar um array de N posições e atribuir um "id" de 0 a N-1 para cada vértice? Assim vocês poderão acessar qualquer vértice em tempo O(1) com "array[id]".
    • Cuidado com o tempo!
      • Evitem buscas completas no grafo se não for estritamente necessário. Se você precisa fazer uma busca linear no grafo toda vez que um vértice é referenciado, algo está errado no seu algoritmo (ver dica anterior sobre o array).
      • Não usem campos como nome (string) para o "id" do vértice. Operações com strings não são eficientes e são complicadas de usar em C, devido à alocação dinâmica. Evitem ao máximo manipulação de strings nesse contexto.
  • Trabalho 3 - Índices
  • Trabalho 4 - Árvore B

Exercícios de Aula

  1. Exercício 1 (05/03/12)
  1. Exercício 2 (20/03/12)

Listas de Exercícios

  1. Lista de Exercícios 1
  2. Lista de Exercícios 2
  3. Lista de Exercícios 3
  4. Lista de Exercícios 4
  5. Lista 5 - Processamento Cosequencial
  6. Lista 6 - Estruturas de Arquivos

Notas

  1. Notas P2
  2. Notas P3
  3. Notas e média de prova
  4. Notas dos Trabalhos
  • Atenção: no Trabalho 3 houve diversos problemas com trabalhos copiados. Para mais detalhes procure o estagiário PAE.

Sugestões de leitura

Livro: Como passar em provas e concursos.

Livro: Data Structures and Algorithms in C++/Java

Livro: Projeto de Algoritmos

Livro: Introduction to Algorithms