Questões de Algoritmos e Estrutura de Dados - Estrutura de Dados para Concurso
Foram encontradas 1.370 questões
Considere a seguinte estrutura de dados em árvore.
Em uma pesquisa binária, o percurso na pré-ordem é:
As características das estruturas de dados estão disponibilizadas na coluna I. Estabeleça a correta correspondência com as estruturas disponibilizadas na coluna II.
Coluna I
1. Estáticas
2. Dinâmicas
Coluna II
( ) Registros
( ) Filas
( ) Pilhas
( ) Vetores
( ) Strings
( ) Árvores
A sequência correta, de cima para baixo, é:
Considere o trecho de código a baixo. Assuma que o operador [ ] (abre e fecha colchetes) é usado para acessar elementos de vetores (arrays) e que o primeiro elemento do vetor é armazenado no índice 0.
v[ i ] = i;
}
para i de 0 até 3 faça {
v[i+1] = v[i+1] + 2*v[i];
}
Qual o valor de v[4] após a execução do trecho de código acima?
[45, 58, 86, 104, 134, 250, 315, 367, 408, 410, 502, 510, 600, 785, 846, 901]
Utilizando-se uma pesquisa binária, o número máximo de buscas para encontrar a chave 600 será:
Seja uma pilha com o número máximo de 10 elementos. Sabendo-se que PUSH e POP retornam 0 se em caso de erro na execução (devido à pilha vazia ou cheia) e 1 em caso contrário, e que TOP(S) retorna –1 quando a pilha estiver vazia, quais os valores retornados ao executar as seguintes operações?
POP(S); POP(S); PUSH(S,A); PUSH(S,B); POP(S); POP(S);
TOP(S); PUSH(S,C); PUSH(S,D); POP(S); TOP(S);
Se nas duas ocorrências de atribuição do valor 0 à variável p, ou seja, p ← 0, for atribuído 1 a esta variável,
Var v: vetor [0..7]: inteiro
Var n, p, u, a: inteiro
Início
Para p de 0 até 7 passo 1 faça
leia (n)
v[p] ← n
Fim_para
p ← 0
u ← 8
Enquanto (u < > 2) faça
Enquanto (p < > (u-1)) faça
Se (v[p] > v[p+1]) então
a ← v[p]
v[p] ← v[p+1]
v[p+1] ← a
Fim_se
p ← p + 1
Fim_enquanto
p ← 0
u ← u - 1
Fim_enquanto
Fim
Considerando-se que v receba os valores 12, 21, 3, 9, 57, 33, 27 e 41, nessa ordem, após executar todos os laços de repetição as posições 4 e 5 do vetor v conterão, respectivamente, os valores
Observe o algoritmo abaixo, que determina a transposta T de uma matriz M3X2.
As instruções que devem substituir
no código estão indicadas na seguinte alternativa:
O seguinte algoritmo foi concebido na forma de uma pseudo-linguagem (Português Estruturado). Utilize-o para responder à questão.
No algoritmo apresentado, o número de posições atualizadas da matriz Est é igual a
algoritmo "MDA"
var
M : vetor[1..5,1..5] de inteiro
L,C : inteiro
procedimento GERAR
inicio
para L de 1 ate 5 faca
para C de 1 ate L faca
se ((C=1) ou (L=C)) entao
M[L,C] <- 1
senao
M[L,C] <- M[L-1,C] + M[L-1 ,C-1]
fimse
fimpara
fimpara
fimprocedimento
procedimento SAIDA
inicio
para L de 1 ate 5 faca
para C de 1 ate I faca
escreva(M[L,C]:3)
fimpara
|escreval
fimpara
fimprocedimento
inicio
GERAR
SAIDA
fimalgoritmo
Após a execução, a saída será:
início
tipo TMAT = matriz [1..5,1..5] de inteiros;
inteiro: i, j, k;
TMAT: Mat;
leia k;
para i de 1 até 5 faça
[
para j de 1 até 5 faça
[
Mat[i,j] ← i-j;
]
]
imprima (Mat[2,3]*Mat[3,2]);
fim.
No algoritmo apresentado foram acrescentadas as seguintes linhas de comando imediatamente antes do comando imprima.
para i de 1 até 5 faça
[
para j de 1 até 5 faça
[
Mat[i,j] ← Mat[i,j] + k;
]
]
Dessa forma, com essa modificação, após a execução do algoritmo, a somatória dos elementos da linha 1 da matriz Mat será igual a: