Monday, December 24, 2012
Saturday, December 22, 2012
Thursday, December 20, 2012
Sistemas de Informações
fonte: aulas CECIERJ
http://www.scielo.br/pdf/rcf/v12n26/v12n26a01.pdf
OBRIGATÓRIO OLHAR FIGURAS: http://msdn.microsoft.com/pt-br/library/gg490650.aspx#ti
Questões importantes estrutura de Dados
(Cesgranrio
2011 transpetro Anal. Desen. Software) O algoritmo Bubble Sort é popular, mesmo
que ineficiente. Usando-se esse algoritmo para ordenar uma tabela, alocada
sequencialmente, em ordem crescente contendo os números [5, 4, 1, 3, 2] serão
feitas:
a) 10 comparações e 8 trocas
b) 10 comparações e 9 trocas
c) 10 comparações e 10 trocas
d) 16 comparações e 9 trocas
e) 16 comparações
e 10 trocas
gab A
Algumas questões importantes sobre Estrutura de Dados do caderno Estrutura de Dados do site www.questoesdeconcursos.com.br :
Q249367 - árvores
Q232436
Q259712 , Q232182 , Q202051 , Q212716 , Q108454 , Q165257 , - Algoritmos de busca
Q27185 , Q264147 , Q265044 , Q259711 , - filas
Q194219 , - Complexidade de algoritmos veja Complexidade de Algoritmos
Algumas questões importantes sobre Estrutura de Dados do caderno Estrutura de Dados do site www.questoesdeconcursos.com.br :
Q249367 - árvores
Q232436
Q259712 , Q232182 , Q202051 , Q212716 , Q108454 , Q165257 , - Algoritmos de busca
Q27185 , Q264147 , Q265044 , Q259711 , - filas
Q194219 , - Complexidade de algoritmos veja Complexidade de Algoritmos
Procedimento x Função
Fazendo o teste de
mesa temos(nesse caso deve-se fazer o teste de mesa baseado nas alternativas):
x
|
i
|
|
10, 11, 13
|
2
|
|
X mod i
|
0, 1, 1
|
|
FLAG
|
S, N, N
|
Recursividade
Para resolver esse exercício tem que tomar cuidado porque o
examinador chama a função da seguinte forma função(y, x), ou seja, ele inverte
a ordem.
Lembre-se de que o comando MOD retorna o RESTO da DIVISÃO INTEIRA.
Fazendo o teste de
mesa temos:
x
|
y
|
|
928, 100, 28, 16, 12, 4
|
100, 28, 16, 12, 4, 0
|
|
1) Função(x,y:integer)
|
||
2) Y=0?
|
100=0?, 28 =0?, 16=0? 12 =0? 4=0? 0=0?
|
|
2.1) Função = x
|
4
|
|
3) X<y
|
||
3.1) função(y,x)
|
||
4) x>y
|
||
4.1) função(y,x mod y)
|
100, 28, 16, 12, 4
|
28, 16, 12, 4, 0
|
Pra resolver a questão acima precisa saber como calcula o
MDC(máximo divisor comum) entre 2 números, já que o examinador não informou
como faz o cálculo do MDC, esse conceito foi cobrado como se o candidato já
soubesse como calcular o MDC(FODA!!! Hehe). Relembrando como se
calcula o MDC(lembre-se que MDC é diferente de MMC):
- CÁLCULO DO M.D.C. PELO PROCESSO DAS DIVISÕES SUCESSIVAS
Nesse processo efetuamos várias divisões até chegar a uma divisão exata. O
divisor desta divisão é o m.d.c. Acompanhe o cálculo do m.d.c.(48,30).
Regra prática:
1º) dividimos o número maior pelo número menor;
48 / 30 = 1 (com resto 18)
48 / 30 = 1 (com resto 18)
2º) dividimos o divisor 30, que é divisor da divisão anterior,
por 18, que é o resto da divisão anterior, e assim sucessivamente;
30 / 18 = 1 (com resto 12)
30 / 18 = 1 (com resto 12)
18 / 12
= 1 (com resto 6)
12 / 6 = 2 (com resto zero -
divisão exata)
3º) O divisor da divisão exata é 6. Então m.d.c.(48,30)
= 6.
Realizando o teste de mesa com os números do exemplo
acima (48,30) temos:
a
|
b
|
|
Function MDC(A, B)
|
30, 18, 12, 6
|
48, 30, 18, 12
|
1) B mod A = 0?
|
18, 12, 6, 0
|
|
1.1) result = A
|
6
|
|
2) result = MDC(B, A mod B)
|
18(repare que o 18 é o valor
do resto de B mod A, ou seja, 48 mod 30 (não é o 48, CUIDADO!!!), 12, 6
|
30(repare que o 30 mod 48 dá
30, ou seja, sempre o menor valor quando se tenta calcular o resto entre um
número menor que o outro),18, 12
|
resolução:
1 + aleam(5,4) = 1+5=6
aleam(5,4)
5=4 ou 4=0
aleam(4,4) +
aleam(4,3)
1+ aleam(4,3) =
1+4=5
aleam(4,3)
4=3
ou 3=0
aleam(3,3)
+ aleam(3,2)
1
+ aleam(3,2)= 1+3=4
aleam(3,2)
3=2
ou 2=0
aleam(2,2)
+ aleam(2,1)
1
+ aleam(2,1) = 1 +2= 3
aleam(2,1)
2=1
ou 1=0
aleam(1,1)
+ aleam(1,0)
1+
aleam(1,0) = 1+1
aleam(1,0)
1=0
ou 0=0
1
Subscribe to:
Posts (Atom)