Computers">
Coletanea Av Estrutura de Dados
Coletanea Av Estrutura de Dados
Coletanea Av Estrutura de Dados
1 VOLTAR
Aluno(a): Matrícula:
Diferentes tipos de estrutura de dados são adequadas a diferentes tipos de aplicação e algumas são altamente
especializadas, destinando-se a algumas tarefas específicas. Dessa forma a definição de Estrutura de Dados está
expressa na alternativa:
É um modo de distribuição e organização de dados em uma rede de computador de modo que possam
ser usados de modo eficiente.
É um modo de deleção de dados em um computador.
É um modo de utilização de dados nos programas de computador.
São os nomes dados as variáveis na montagem de uma rotina.
É um modo particular de armazenamento e organização de dados em um computador de modo que
possam ser usados de modo eficiente.
Considere uma estrutura de dados do tipo vetor. Com respeito a tal estrutura, é correto que seus componentes
são caracteristicamente:
O que acontece ao se inserir uma informação quando já usamos toda a área disponível do vetor (topo = fim)?
inclusão
remoção
underflow
overflow
ordenação
Analise as seguintes afirmações: I. Na Passagem por Referência, o parâmetro que vai ser passado na chamada
da função deve ser uma variável, de tal forma que uma alteração de valor neste parâmetro também altera a
variável correspondente. II. Uma recursão consiste em uma função chamar ela mesma com argumentos sempre
do mesmo valor. III. Considerando-se o escopo das variáveis, é correto afirmar que uma variável é dita global
quando a sua passagem no momento da chamada de uma função se dá tanto por valor quanto por referência.
Uma variável é dita local quando esta passagem se dá apenas por valor. Indique a opção que contenha todas as
afirmações verdadeiras.
A técnica LIFO (last in first out), utilizada em programação estruturada, é fundamentada no conceito de:
fila
pilha
ponteiro
loop
array
A técnica LIFO (last in first out), utilizada em programação estruturada, é fundamentada no conceito de:
Registro
Ponteiro
Fila
Pilha
Loop
Sua Resposta:
Compare com a sua resposta: Pilha se caracteriza por ser uma estrutura de dados que são inseridos e retirados
numa sequencia semelhante as anilhas de alteres, isto é, usa a lógica LIFO. Já uma fila se caracteriza por ser
um estrutura semelhante a fila de banco, isto é, os dados vão chegando e sendo processados e retirados da
estrutura. Essa lógica é chamada de FIFO.
struct TipoLista{
int elemt[TAMMAX];
};
Fundamento no tipo de dado(registro) acima que representa uma implementação de uma lista linear sequencial.
Construa um procedimento para adicionar um dado no final da lista.
A lista e o dado serão passados por parâmetro. Usar o mecanismo de passagem por referência se for
necessário.
Sua Resposta:
Compare com a sua resposta:
lista.qtde++;
}}
Fechar
Nota da Prova: 7,0 de 8,0 Nota do Trabalho: Nota de Participação: 1 Data: 15/06/2013 11:09:07
Analisando o trecho de código abaixo, marque a alternativa correta que apresenta o que será impresso na tela
do usuário. Sabe-se que na linguagem C os ponteiros são representados pelo sinal de asterisco (*), o endereço
de memória pelo sinal & e a função de impressão é denominada printf.
void funcao ( int *a, int *b)
{
int c;
c = *a;
a = b;
*b = c;
}
main()
{
int a=2, b=3;
funcao (&a, &b);
printf("%d - %d \n",a,b);
}
3-3
3-2
2-2
2-3
Não irá compilar
As estruturas de dados permitem o uso de certos algoritmos para a ordenação dos elementos de forma a
facilitar a consulta de determinado elemento. Existem vários tipos de algoritmos para realizar a ordenação dos
elementos, onde um algoritmo de ordenação deve rearranjar o vetor de forma a estabelecer uma ordem entre
os elementos. O trecho de código abaixo descreve o algoritmo chamado:
Bolha
MergeSort
QuickSort
Seleção
Inserção
struct Produto {
int codigo;
char descricao[40];
float preco;
};
/* atribuição do preço */
...
A forma correta para atribuir 2.99 ao campo preco dentro de função atribui é:
Uma sequência de passos computacionais que transforma uma entrada em uma saída previamente
determinada.
O meio para armazenar e organizar dados com o objetivo de facilitar o acesso e as modificações.
É a saída, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
solução do problema.
A entrada, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
solução do problema.
O que permite o armazenamento e a recuperação de dados independentemente de seu conteúdo.
Geralmente em algumas situações é necessário fazer a desalocação do espaço utilizado na memória. Porém,
isso depende de como a reserva de uma quantidade de espaço de memória é feita, pois em alguns casos, o
próprio compilador faz a desalocação. Quando o compilador não faz esta desalocação a memória foi reservada
utilizando______.
Declaração de função
Declaração de vetor
Alocação dinâmica de memória
Alocação estática de memória
Declaração de matriz
Resposta: A estrutura pilha se baseia no conceito LIFO ( Last In First Out ), no qual o ultimo elemento que entra
é o primeiro elemento que vai sair. Já a fila se baseia no conceito FIFO ( First In First Out ) no qual o primeiro
elemento que entra será o primeiro a sair.
Gabarito: Pilha se caracteriza por ser uma estrutura de dados que são inseridos e retirados numa sequencia
semelhante as anilhas de alteres, isto é, usa a lógica LIFO. Já uma fila se caracteriza por ser um estrutura
semelhante a fila de banco, isto é, os dados vão chegando e sendo processados e retirados da estrutura. Essa
lógica é chamada de FIFO.
Uma fila duplamente terminada, isto é, uma estrutura linear que permite inserir e remover de ambos os
extremos é chamada de:
Boyer-Moore.
Deque.
Árvore.
Autômato.
Shift-and.
Nota da Prova: 6,5 de 8,0 Nota do Trabalho: Nota de Participação: 2 Data: 26/04/2013 10:10:31
O registro de ativação de uma sub-rotina é o conjunto das informações que devem/precisam ser alocadas em
memória. Assinale abaixo a única opção que representa a composição destas informações.
Considere:
III - A busca seqüencial executa cada fase de repetição na forma de uma subtarefa da fase anterior.
IV - A busca binária trabalha com uma forma circular de repetição. Está correto o que consta em:
As estruturas de dados permitem o uso de certos algoritmos para a ordenação dos elementos de forma a
facilitar a consulta de determinado elemento. Existem vários tipos de algoritmos para realizar a ordenação dos
elementos, onde um algoritmo de ordenação deve rearranjar o vetor de forma a estabelecer uma ordem entre
os elementos. O trecho de código abaixo descreve o algoritmo chamado:
MergeSort
Bolha
Seleção
Inserção
QuickSort
5a Questão (Cód.: 77785) Pontos: 1,0 / 1,0
É um método de pesquisa ou busca, cujo algoritmo parte do pressuposto de que o vetor está
ordenado e realiza sucessivas divisões do espaço de busca, comparando o elemento buscado (chave)
com o elemento no meio do vetor. Se o elemento do meio do vetor for a chave, a busca termina com
sucesso. Caso contrário, se o elemento do meio vier antes do elemento buscado, então a busca
continua na metade posterior do vetor. E finalmente, se o elemento do meio vier depois da chave, a
busca continua na metade anterior do vetor.
A descrição apresentada trata-se do método denominado busca ......
randômica.
linear.
binária.
por contagem.
por comparação.
Tanto a operação TOP (acessa topo), quanto à operação POP (remover), permite acessar o último elemento
armazenado em uma Pilha. Quanto à diferença entre ambas as operações em relação ao estado da Pilha é
correto afirmar:
I. Pilha é uma estrutura de dados com acesso restrito aos seus elementos, uma vez que eles são colocados e
retirados por um único lado e são ordenados pelo princípio LIFO (last in first out). Assim, sempre que um
elemento é adicionado ou retirado seu topo é alterado.
II. Pilha é o tipo de estrutura usada, por exemplo, na avaliação de expressões numéricas, na recursividade e
pelos compiladores, na passagem de parâmetros para as funções.
III. Registro é uma estrutura básica que permite guardar coleções de dados de diferentes tipos, sendo
normalmente utilizado quando um objeto tem diferentes atributos, isto é, contém campos de diferentes tipos.
IV. Lista pode conter um número qualquer de elementos, expandindo-se ou contraindo-se conforme o
elementos são inseridos ou retirados. Nesse tipo de estrutura, os acessos tanto podem ser feitos
sequencialmente como diretamente.
V. Fila, assim como a pilha , é uma versão especial de lista, e como tal, seus elementos são ordenados pelo
princípio LIFO (last in first out).
I, II e III.
II, III, IV e V.
I, III e V.
I, III, IV e V.
II, IV e V.
Diferentes tipos de estrutura de dados são adequadas a diferentes tipos de aplicação e algumas são altamente
especializadas, destinando-se a algumas tarefas específicas. Dessa forma a definição de Estrutura de Dados está
expressa na alternativa:
A técnica LIFO (last in first out), utilizada em programação estruturada, é fundamentada no conceito de:
ponteiro
loop
array
pilha
fila
Os métodos de ordenação são muito utilizados em estruturas de dados para facilitar a busca e a recuperação
posterior de itens de conjuntos ordenados. Existem vários métodos de ordenação, por este motivo, marque
corretamente a alternativa que apresenta o código do método de seleção.
Avaliação On-Line
Avaliação: AV1-2012.1-EAD-ESTRUTURA DE DADOS-CCT0174
Disciplina: CCT0174 - ESTRUTURA DE DADOS
Tipo de Avaliação: AV1
Aluno: 201001509341 - RAPHAEL DA SILVA ROMA
Nota da Prova: 6 Nota do Trabalho: Nota da Participação: 1 Total: 7
Prova On-Line
Questão: 1 (131694)
Manter os dados ordenados, facilita quando precisamos recuperar dados armazenados, para tal foram
desenvolvidos algoritmos que são divididos em métodos simples e sofisticados.
Das opções apresentadas qual apresenta apenas métodos simples?
Pontos da Questão: 0,5
Questão: 2 (127075)
Chama-se “membros” os elementos que compõe uma estrutura (struct). E para acessá-los utiliza-se o operador
ponto (.) . Suponha que as seguintes declarações tenham sido feitas:
struct atleta {
float altura;
float peso;
};
atleta Paulo;
atleta Marcos;
Marque a única alternativa contendo uma atribuição CORRETA:
Pontos da Questão: 1
Paulo.peso=Marcos;
Marcos=80;
Paulo.altura=1.80;
Marcos=Paulo.altura;
Paulo.altura.peso=1.80 , 80;
Questão: 3 (128268)
Considere a função que deve implementar a busca binária. Note que ela está incompleta e que você deve
completá-la.
https://sia.estacio.br/portal/prt0010a.asp?p1=3313951&p2=8952&p3=1135304 02/07/2012
Visualização de Prova Página 2 de 6
if (valor == __________
return __________
if (valor < ____________)
_______________
else
________________
}
return -1;
}
}
return -1;
}
}
return -1;
}
https://sia.estacio.br/portal/prt0010a.asp?p1=3313951&p2=8952&p3=1135304 02/07/2012
Visualização de Prova Página 3 de 6
fim = inicio -1;
else
inicio = fim + 1;
}
return -1;
}
}
return -1;
}
}
return -1;
}
Questão: 4 (138123)
Na manipulação de dados em uma lista de um determinado sistema, onde cada nó desta lista possui um
conjunto de dados e um ponteiro indicando onde será encontrado o próximo nó, gerado durante a execução do
programa, caracteriza uma lista: Pontos da Questão: 1
Dinâmica Encadeada.
Dinâmica Seqüencial.
Seqüencial Encadeada.
Estática Encadeada.
Seqüencial Estática.
Questão: 5 (127066)
Uma variável estrutura (struct) consiste em itens de dados armazenados na memória em sequência contínua e
na ordem em que foram definidos. Marque a alternativa ERRADA, dentre as sentenças sobre estruturas. Pontos
https://sia.estacio.br/portal/prt0010a.asp?p1=3313951&p2=8952&p3=1135304 02/07/2012
Visualização de Prova Página 4 de 6
da Questão: 0,5
Uma estrutura pode ser passada como parâmetro por funções, mas as funções não retornam estruturas,
apenas tipos de dados nativos ( int, float, char e double).
Uma estrutura é um conjunto de variáveis que podem ser diferentes, agrupadas em uma única unidade.
Definir uma estrutura significa informar ao compilador como ela está organizada, quais são seus itens e
qual é seu nome.
A definição de uma estrutura não cria nenhuma variável; para criá-la, é necessário incluir uma instrução de
declaração de variável.
O espaço ocupado, por uma estrutura, é o número de bytes suficientes para armazenar todos os seus itens.
Questão: 6 (127094)
Existem vários algoritmos de ordenação de dados para vetores. Sabe-se que estes algoritmos, para executar a
ordenação dos dados, baseiam-se em duas tarefas principais: comparação e troca.
Leia as sentenças abaixo e assinale a resposta correta.
I. Pode-se comparar os conteúdos de vetores numéricos usando os operadores relacionais >, >=, <, <= , ==
e !=.
II. Para trocar os conteúdos das variáveis, o comando de atribuição nunca poderá ser usado.
III. As regras da comparação para membros de uma estrutura (struct) seguirão as mesmas regras utilizadas
para comparar conteúdos de vetores.
IV. Utiliza-se a função strcpy para comparar dois vetores de char.
Pontos da Questão: 0,5
I e II estão corretas.
II e IV estão erradas.
III e IV estão corretas
I e III estão corretas.
I e IV estão erradas.
Questão: 7 (129441)
No desenvolvimento de sistemas devemos utilizar a modularização como forma de melhorar nossos sistemas,
inserindo agilidade, facilidade de manutenção e etc.
Quando em um programa um determinado pedaço do código ocorre várias vezes vezes fazendo as seguintes
atividades:
- Lendo alguns valores informados pelo usuário;
- fazendo alguns cálculos;
- e armazenando o resultado.
Questão: 8 (127835)
Considere o seguinte trecho na main :
https://sia.estacio.br/portal/prt0010a.asp?p1=3313951&p2=8952&p3=1135304 02/07/2012
Visualização de Prova Página 5 de 6
int v[ ] ={1,2,3,4,5};
descobrir(v,5);
e a definição da função :
0 0 4 0 8
1 1 1 7 1
0 1 5 1 9
1 1 5 1 9
1 3 1 7 1
Questão: 9 (127839)
Considere
struct aluno {
int matricula;
float media;
};
https://sia.estacio.br/portal/prt0010a.asp?p1=3313951&p2=8952&p3=1135304 02/07/2012
Visualização de Prova Página 6 de 6
<< vi.media << endl;
}
Questão: 10 (138188)
Editores de texto geralmente oferecem um mecanismo de reversão de operações (“O famoso desfazer, undo”),
que cancela operações recentes e reverte um documento ao estado anterior ao da operação realizada.
Que tipo de estrutura de dados seria melhor aplicada para este mecanismo?
Pontos da Questão: 1
Grafo
Árvore
Registro
Pilha
Fila
Fechar
Server IP : 192.168.10.139 Client IP: 187.67.226.236 Tempo de execução da página : 1,344
https://sia.estacio.br/portal/prt0010a.asp?p1=3313951&p2=8952&p3=1135304 02/07/2012
Visualização de Prova Page 1 of 4
Avaliação On-Line
AV1-2011.1T.EAD - FUNDAMENTOS DE SISTEMAS DE INFORMAÇÃO -
Avaliação:
CCT0136
Disciplina: CCT0136 - FUNDAMENTOS DE SISTEMAS DE INFORMAÇÃO
Tipo de Avaliação: AV1
Aluno: 201007004134 - HELDER MATOS PEREIRA
Nota da Prova: 6 Nota do Trabalho: Nota da Participação: Total: 6
Prova On-Line
Com base em sua analise dos itens, assinale a única opção correta. Pontos da Questão: 1
m
n As opçoes III e IV estão corretas
j
k
l
m
n As opções I, II e III estão corretas
j
k
l
m
i
n As opçoes II e IV estão corretas
j
k
l
m
n As opções I e IV estão corretas
j
k
l
m
i
n DADOS CORPORATIVOS,SAD,e-business
j
k
l
m
n
j
k
l
CENÁRIOS COLABORATIVOS, COMUNICAÇÃO, e-business
m
n
j
k
l
CENÁRIOS COLABORATIVOS, DADOS CORPORATIVOS, e-business
m
n CENÁRIOS COLABORATIVOS,DADOS CORPORATIVOS,COMUNICAÇÃO
j
k
l
Gabarito:
CENÁRIOS COLABORATIVOS, DADOS CORPORATIVOS, COMUNICAÇÃO
https://sia.estacio.br/portal/prt0010a.asp?p1=1644234&p2=6184&p3=1140019 7/6/2011
Visualização de Prova Page 2 of 4
m
n Somente a sentença II está correta
j
k
l
m
n Somente as sentenças II e III estão corretas
j
k
l
m
n Todas as sentenças são corretas
j
k
l
m
i
n Somente as sentenças I e III estão corretas
j
k
l
Com base em sua análise, assinale a única alternativa correta. Pontos da Questão: 1
m
i
n Somente as opções I e II estão corretas
j
k
l
m
n Somente as opções I e III estão corretas
j
k
l
m
n Somente as opções III e IV estão corretas
j
k
l
m
n Somente as opções I e IV estão corretas
j
k
l
m
n LÓGICA HUMANA
j
k
l
m
i
n LÓGICA DE DECISÃO
j
k
l
m
n LÓGICA BOOLEANA
j
k
l
m
n LÓGICA DIFUSA
j
k
l
Gabarito:
LÓGICA DIFUSA
https://sia.estacio.br/portal/prt0010a.asp?p1=1644234&p2=6184&p3=1140019 7/6/2011
Visualização de Prova Page 3 of 4
Com base na afirmativa marque a que categoria a afirmativa se refere: Pontos da Questão: 1
m
n GERENCIAMENTO DE DECISÕES
j
k
l
m
i
n APOIO À DECISÃO
j
k
l
m
n MONITORAÇÃO
j
k
l
m
n CONTROLE DE PROCESSO
j
k
l
Gabarito:
GERENCIAMENTO DE DECISÕES
I. O acesso à Internet é feito através da conexão de um computador a um provedor de acesso, ou seja, uma empresa
que provê acesso à Internet aos seus clientes através da manutenção de uma infraestrutura tecnológica, tanto de
hardware quanto de software (linhas telefônicas, computadores, roteadores, páginas, e-mail e outros).
II. World Wide Web ou "WWW" é uma rede mundial de computadores que fornece informações para quem se conecta à
Internet, através de um navegador (browser), que descarrega essas informações (chamadas "documentos" ou
"páginas") de servidores de internet (ou "sites") para a tela do computador do usuário.
III. Intranet é uma rede corporativa que se utiliza da mesma tecnologia e infra-estrutura de comunicação de dados da
Internet, mas restrita a um mesmo espaço físico de uma empresa.
https://sia.estacio.br/portal/prt0010a.asp?p1=1644234&p2=6184&p3=1140019 7/6/2011
Visualização de Prova Page 4 of 4
Pontos da Questão: 1
m
n
j
k
l
II e III
m
n
j
k
l
III
i
m
n
j
k
l
I e II
m
n
j
k
l
I
Fechar
Server IP : 192.168.10.145 Client IP: 201.17.169.103 Tempo de execução da página : 1,547
https://sia.estacio.br/portal/prt0010a.asp?p1=1644234&p2=6184&p3=1140019 7/6/2011
Avaliação: AV1-2012.1-EAD-ESTRUTURA DE DADOS-CCT0174
Disciplina: CCT0174 - ESTRUTURA DE DADOS
Tipo de
AV1
Avaliação:
Aluno: 201002133882 - JOÃO PAULO FERNANDES BRAGA
Nota da Nota da
4 Nota do Trabalho: Total: 5
Prova: Participação: 1
Prova On-Line
Inserção.
Busca.
Verificação de Cheia.
Verificação de Vazia.
Retirada.
Marcos=80;
Paulo.peso=Marcos;
Marcos=Paulo.altura;
Paulo.altura=1.80;
Paulo.altura.peso=1.80 , 80;
ponto p1,p2,p3;
p1=p2+5;
p1=p2+p3;
p1-p2=p1-p3;
p1=p2;
p1+p3=p2;
floatnota_minima(av1, av2)
{
return (18-av1-av2);
}
busca binária
bubblesort
busca seqüencial
Não é possível criar um vetor de structs, pois o vetor trabalha apenas com
dados do mesmo tipo.
}
implementa o método de ordenação :
Pontos da Questão: 0,5
por seleção
bubblesort
por inserção
Pilha
Grafo
Fila
Árvore
Registro
Visualização de Prova Página 1 de 6
Avaliação On-Line
Avaliação: AV2-2012.1 EAD- ESTRUTURA DE DADOS-CCT0174
Disciplina: CCT0174 - ESTRUTURA DE DADOS
Tipo de Avaliação: AV2
Aluno: 201001509341 - RAPHAEL DA SILVA ROMA
Nota da Prova: 4 Nota do Trabalho: Nota da Participação: 0 Total: 4
Prova On-Line
Questão: 1 (127056)
Sabe-se que um protótipo de uma função é o cabeçalho da função com ;(ponto-e-vírgula) ao final. E que nas
funções a passagem de parâmetros se dá por valor ou por referência.
Para o protótipo: void troca(float&,float&); pode-se dizer que:
Pontos da Questão: 0,5
É um protótipo de função que recebe dois argumentos por passagem de valor. Os dois do tipo real e
retorna, para a função chamadora, um valor inteiro.
É um protótipo de função que recebe dois argumentos reais e retorna, para a função chamadora, um
valor real.
É um protótipo de função que recebe dois argumentos que são endereços que armazenam números reais,
por passagem por referência. E a função não retorna nada para a função chamadora.
É um protótipo de função que recebe dois argumentos reais por passagem de valor e não retorna nada
para função chamadora.
É um protótipo de função que recebe dois argumentos por passagem de valor. Um do tipo char e outro do
tipo int, mas não retorna nada para função chamadora.
Questão: 2 (129248)
Para o cadastro de algumas notas e médias de alunos, foi criada a seguinte estrutura e declarada como
global:
struct aluno{
float nota1, nota2,media;
}alunos[20];
float calcmedia(){
float m;
m = (alunos[i].nota1+ alunos[i].nota2)/2;
alunos[i].media= m;
return m;
https://sia.estacio.br/portal/prt0010a.asp?p1=3745229&p2=10072&p3=1135304 02/07/2012
Visualização de Prova Página 2 de 6
float m;
m = (aluno[i].nota1+ aluno[i].nota2)/2;
aluno[i].media= m;
return m;
float m;
m = (alunos[i].nota1+ alunos[i].nota2)/2;
alunos[i].media= m;
float m;
m = (alunos[i].nota1+ alunos[i].nota2)/2;
alunos[i].media= m;
return m;
float m;
m = (alunos[i].nota1+ alunos[i].nota2)/2;
alunos[i].media= m;
https://sia.estacio.br/portal/prt0010a.asp?p1=3745229&p2=10072&p3=1135304 02/07/2012
Visualização de Prova Página 3 de 6
Escreva uma função que permita inserir dados em uma lista duplamente encadeada de forma seqüencial, com o preenchimento de 3
nós, baseado na estrutura apresentada. A função deverá receber o nó inicial e não retornar nada.
struct num_letra {
int num;
char letra;
struct num_letra *ant, *post;
};
Gabarito:
void insere(num_letra *no){ num_letra *aux; for (int i=0;i<3;i++){ no->num = i; no->letra= i+65; if
(i==0){ no->ant=NULL; no->post=NULL; }else{ aux= no-1; aux->post=no; no->ant=aux; no-
>post=NULL; } no++; } }
Fundamentação do Professor:
void insere(num_letra *no){ num_letra *aux; for (int i=0;i<3;i++){ no->num = i; no->letra= i+65; if
(i==0){ no->ant=NULL; no->post=NULL; }else{ aux= no-1; aux->post=no; no->ant=aux; no-
>post=NULL; } no++; } }
Pontos do Aluno: 0
Questão: 4 (127836)
Com relação à struct, é correto afirmar que : Pontos da Questão: 0,5
Não é possível criar um vetor de structs, pois o vetor trabalha apenas com dados do mesmo tipo.
A struct é sempre definida dentro da main.
Cada elemento da struct é chamado componente.
Cada elemento da struct é chamado campo e cada campo deve ser, obrigatoriamente, de um tipo de
dados distinto de outro campo.
Cada elemento da struct é denominado membro ou campo, sendo que a struct pode armazenar
elementos de tipos diferentes ou não.
Gabarito:
Permite uma busca em um vetor já ordenado, dividindo o espaço de busca ao meio e verificando se o dado
está no meio, ou antes, do meio ou depois do meio, comparando o valor de busca com o elemento da lista a
ser procurado A busca binária é mais rápida que a seqüencial na maioria das vezes. A busca de uma palavra
em um dicionário, com a busca seqüencial, se a palavra desejada estiver no final do dicionário levaria muito
tempo indo de página em página.
Fundamentação do Professor:
Permite uma busca em um vetor já ordenado, dividindo o espaço de busca ao meio e verificando
se o dado está no meio, ou antes, do meio ou depois do meio, comparando o valor de busca com
o elemento da lista a ser procurado A busca binária é mais rápida que a seqüencial na maioria
das vezes. A busca de uma palavra em um dicionário, com a busca seqüencial, se a palavra
https://sia.estacio.br/portal/prt0010a.asp?p1=3745229&p2=10072&p3=1135304 02/07/2012
Visualização de Prova Página 4 de 6
Questão: 6 (138183)
A alocação dinâmica de memória vem possibilitar a criação de tipos de dados e estruturas de qualquer
tamanho durante a execução do programa.
Quais são os operadores que respectivamente alocam e liberam espaço na memória?
insere e apaga.
novo e deleta.
new e delete.
insert e delete.
aloc e maloc.
Questão: 7 (139408)
As listas simplesmente encadeadas tem como característica.
Possuir um nó com o máximo de dois elementos, sendo um deles um ponteiro para o próximo nó.
Possuir um nó com no mínimo dois elementos, sendo um deles um ponteiro para o próximo nó.
Possuir um nó com o máximo de três elementos, sendo dois ponteiros que indicam o nó anterior e o
próximo.
Possuir um nó com apenas um elemento, sendo este um ponteiro para o próximo nó.
Possuir um nó com três elementos, sendo dois ponteiros que indicam o nó anterior e o próximo.
Questão: 8 (139724)
Nas listas encadeadas podemos fazer referência a uma parte de um nó, através de um outro nó. Na
estrutura apresentada o ponteiro p armazena o endereço do próximo nó.
struct teste {
int valor;
struct teste *p;
};
Das opções apresentadas qual permite armazenar na variável val do tipo inteiro o valor que está no nó
seguinte ao nó posicionado , sabendo-se que aux, contem o endereço do nó atual.
Pontos da Questão: 0,5
val= aux->p->valor;
val= aux->valor;
val= p->p->valor;
val-> aux->p->valor;
val= aux->p.p;
Questão: 9 (131699)
Determinado método de ordenação seleciona o menor elemento dentro do conjunto e coloca na primeira
posição, depois o segundo menor e coloca na segunda posição e assim por diante até que todo o conjunto
esteja ordenado.
Qual das opções apresenta este método?
Pontos da Questão: 0,5
Merge sort;
https://sia.estacio.br/portal/prt0010a.asp?p1=3745229&p2=10072&p3=1135304 02/07/2012
Visualização de Prova Página 5 de 6
Quick sort;
Insertion sort;
Shell sort;
Selection sort;
Questão: 10 (139130)
Considere
struct nodupla {
int dado;
struct *dlink, //aponta para o nó à direita
*elink; //aponta para o nó à esquerda
};
Assinale a função que corretamente substitui o valor armazenado no último nó de uma lista duplamente
encadeada não vazia pelo valor 50.
Pontos da Questão: 1
https://sia.estacio.br/portal/prt0010a.asp?p1=3745229&p2=10072&p3=1135304 02/07/2012
Visualização de Prova Página 6 de 6
Fechar
Server IP : 192.168.10.139 Client IP: 187.67.226.236 Tempo de execução da página : 1,266
https://sia.estacio.br/portal/prt0010a.asp?p1=3745229&p2=10072&p3=1135304 02/07/2012
Avaliação On-Line
Avaliação: AV2-2012.1 EAD- ESTRUTURA DE DADOS-CCT0174
Disciplina: CCT0174 - ESTRUTURA DE DADOS
Tipo de
AV2
Avaliação:
Aluno: 201002133882 - JOÃO PAULO FERNANDES BRAGA
Nota da Nota da
3.5 Nota do Trabalho: Total: 5,5
Prova: Participação: 2
Prova On-Line
Questão: 1 (127840)
Considere
struct Ponto { float x, y; };
Ponto P;
P = criarPonto();
Ponto inserePonto()
{
Ponto aux;
cin >> Ponto.x >> Ponto.y;
return aux;
}
Ponto inserePonto()
{
Ponto aux;
cin >> aux.x >> aux.y;
return Ponto;
}
Ponto inserePonto()
{
Ponto aux;
cin >> aux.x >> aux.y;
return aux;
}
Ponto inserePonto()
{
Ponto aux;
cin >> x.aux >> y.aux;
return aux;
}
Ponto inserePonto()
{
Ponto aux;
cin >> Ponto.aux.x >> Ponto.aux.y;
return aux;
}
Gabarito:
Algumas estruturas de dados são definidas apenas pela sua organização em
memória outras, além disto, pelo seu algoritmo. O sistema operacional aplica o uso
da pilha dinâmica como forma de armazenamento de memória em funções
recursivas. As operações são: Inicializar, Inserir, Retirar, Verificar Cheia e Verificar
Vazia.
Fundamentação do Professor:
Algumas estruturas de dados são definidas apenas pela sua organização em memória outras, além disto
0,5
Pontos do Aluno:
Questão: 3 (129448)
Na criação de uma função precisamos definir suas partes, sendo algumas
obrigatórias e outras alternativas, na linguagem C temos:
Questão: 4 (127837)
Assinale a opção correta.
Questão: 5 (131699)
Determinado método de ordenação seleciona o menor elemento dentro do conjunto
e coloca na primeira posição, depois o segundo menor e coloca na segunda posição
e assim por diante até que todo o conjunto esteja ordenado.
Qual das opções apresenta este método?
Pontos da Questão: 0,5
Insertion sort;
Quick sort;
Selection sort;
Shell sort;
Merge sort;
Questão: 6 (139130)
Considere
struct nodupla {
int dado;
struct *dlink, //aponta para o nó à direita
*elink; //aponta para o nó à esquerda
};
Questão: 7 (138180)
Das opções apresentadas qual representa a estrutura de dados Fila:
FIFO;
PSUE;
UEPS;
LIFO;
FILO;
Questão: 8 (139412)
Como característica fundamental das pilhas dinâmicas temos a inserção e remoção
de nós do topo(uma variável do tipo do nó). Sendo assim podemos afirmar que a
cada novo nó inserido constituído de um ponteiro também do tipo do nó e um dado,
deverá:
Questão: 9 (139425)
Em uma lista duplamente encadeada, na retirada de um nó cercado por outros dois
nós quaisquer, sendo eles considerados nó 1, 2 e 3 onde 2 é o nó a ser retirado,
para manter a integridade da lista devemos:
struct num_letra {
int num;
char letra;
struct num_letra *ant, *post;
};
Pontos da Questão: 1,5
Resposta do Aluno:
exibir(*ant, *post) { num_letra->*ant=num; num_letra->*post=letra;
cout<<"EXIBIR NUMERO" <<num_letra->*ant=num; cout<<"EXIBIR LETRA"
<<num_letra->*post=letra; }
Gabarito:
void funcao(num_letra *fim){ num_letra *aux; aux = ini; while(aux){ if (aux-
>post==NULL){ cout<<aux->letra; cout<<aux->num; aux= NULL; }else{
cout<<aux->letra; cout<<aux->num; aux--; } } }
Fundamentação do Professor:
void funcao(num_letra *fim){ num_letra *aux; aux = ini; w hile(aux){ if (aux->post==NULL){ cout<<aux->le
0,5
Pontos do Aluno:
Fe cha r
Protótipo da função :
nw : quantidade de elementos em w
Note :
Inicialmente n vale zero.
Deverá ser retornado true (sucesso na interseção) ou false (fracasso na interseção).
Resposta: bool intersecao(int v[ ], int w[ ], int z [ ], int nv , int nw , int &n) { n=0; for (int nv=v[i]; int nw=w[i];
int n=z[i]); if return true; else return false; }
C om base nos principais elementos fornecidos pela biblioteca C ++ padrão, marque a opção correta que resume
todos os elementos dessa biblioteca:
Listas, pilhas, filas,conjuntos e multiconjuntos, deques e filas com prioridade, mapas.
Iteradores, vetores, listas, pilhas, filas, deques e filas com prioridade, mapas.
Vetores, listas, pilhas, filas,conjuntos e multiconjuntos, deques e filas com prioridade,
iteradores, vetores, listas, pilhas, filas,conjuntos e multiconjuntos, deques e filas com prioridade, mapas.
Iteradores, pilhas, filas,conjuntos e multiconjuntos, deques e filas com prioridade, mapas.
A armazenagem de dados pode ocorrer temporariamente em uma variável, um vetor ou em uma estrutura
chamada Struct na linguagem C e C ++. C omo se procede a atribuição de valor a um determinado campo de
uma estrutura do tipo Struct?
Nome da estrutura vírgula tipo do campo
Nome da estrutura ponto tipo do campo
Nome da estrutura ponto nome do campo
Nome da estrutura seta nome do campo
Nome da estrutura seta tipo do campo
Observe o trecho de código em C /C ++ a seguir. O laço for preenche os dados dos candidatos no vetor de
selecionados. (adaptado para C /C ++)
1.struct C andidato {
2. char nome[15];
3. double nota;
4. };
5.
6.int main(){
7. struct C andidato selecionados[5];
8. int i;
9. for (i=0; i<5; i++){
10. cout << "Nome: ";
11. cin.get();cin.get(***********,15);
12. cout << "Nota: ";
13. cin >> ***********;
14. }
15. ...
16.}
Observe que o código no interior dos comandos das linhas 11 e 13 foi substituido por ***********.
Para que este programa compile e execute sem erros, os asteriscos nas linhas 11 e 13 devem ser substituídos
respectivamente por:
C andidato.nome[i]
C andidato.nota[i]
selecionados.nome[i]
selecionados.nota[i]
selecionados[i].nome
selecionados[i].nota
C andidato[i].nome
C andidato[i].nota
nome[i]
nota[i]
Sobre o funcionamento da busca binária, é incorreto afirmar que dividindo seu vetor em duas metades.
Se o item for maior que o item que está na metade do vetor procure na segunda metade, ou seja, a da
direita.
Se o item for igual ao item que está na metade do vetor, o item não foi encontrado.
Se o item for menor ao item que está na primeira posição do vetor, o item não foi encontrado.
Se o item for igual ao item que está na metade do vetor, o item foi encontrado.
Se o item for menor que o item que está na metade do vetor, procure na primeira metade, ou seja, a da
esquerda.
C om a utilização das estruturas de dados e seus tipos, em algumas situações é imprescindível a criação de
funções que façam determinada verificação ou ação nestas estruturas. Dessa forma, analise a função abaixo e
marque corretamente a alternativa que descreve as funcionalidades desta.
Para a criação de uma Fila seqüencial basta iniciar as variáveis de início e final, ou seja, apontá-las para as
posições iniciais do vetor. O que alteraria na rotina de inserir se a variável final fosse inicializada com o valor -1
(menos um):
Após a inserção deve-se fazer o decremento da variável final
Antes da inserção deve-se fazer o incremento da variável final
Após a inserção deve-se fazer o incremento da variável final
Antes da inserção deve-se fazer o decremento da variável final
Após a inserção deve-se fazer o incremento da variável inicio
O resultado de um concurso foi armazenado por um programador em um vetor, onde cada elemento (descrito
pela struct C andidato) possui a informação da matrícula e nota de cada candidato, conforme descrito a seguir.
Deseja-se que o vetor com os resultados fique ordenado em ordem decrescente pela nota. O programador
pretende usar o algoritmo de busca descrito a seguir, porém precisa de ajuda no trecho contendo ********.
Indique a opção que contém a solução que completa as linhas 1, 3 e 7 do algoritmo.
...
struct C andidato {
char mat[10];
float nota;
};
...
Nota da Prova: 10,0 de 10,0 Nota do Trabalho: Nota de Participação: Data: 01/07/2013 16:12:05
A entrada, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
solução do problema.
O meio para armazenar e organizar dados com o objetivo de facilitar o acesso e as modificações.
A saída, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
solução do problema.
Uma sequência de passos computacionais que transforma uma entrada em uma saída previamente
determinada.
O que permite o armazenamento e a recuperação de dados independentemente de seu conteúdo.
A estrutura de dados linear que obedece o seguinte critério: o último elemento inserido será o primeiro
elemento a ser retirado (LIFO) é:
árvore binária.
árvore AVL.
pilha.
fila.
lista circular.
Vetor
Registro
Loop
Pilha
Fila
Guardar endereço de memória em "nós", normalmente identificados por previous ou next, é uma
característica presente nas listas duplamente encadeadas.
Nos sistemas operacionais, a execução dos processos concorrentes ocorre segundo os princípios da
estrutura FILO.
LIFO refere-se à estrutura de dados do tipo pilha, que nada mais é do que uma lista linear, duplamente
encadeada.
Um grafo com um único vértice e sem arestas é conhecido como dígrafo.
LIFO refere-se à estrutura de dados do tipo pilha, que nada mais é do que uma lista linear, sem disciplina
de acesso, onde o primeiro elemento a entrar é o último a sair.
6a Questão (Cód.: 27773) Pontos: 1,0 / 1,0
b-b-a-c-c-c
a-a-a-b-c-b
a-c-a-b-c-a
c-a-a-b-c-b
a-b-a-c-c-b
No programa abaixo, diga em que área de memória serão alocados os elementos de dados y e r,
respectivamente.
#include
using namespace std;
int x, y;
float media( float a, float b )
{ float tmp;
tmp = (a + b ) / 2.0;
return ( tmp );
}
int main()
{
float r;
cout<<"Informe 2 valores: ";
cin>>x>> y;
r = media( x, y );
cout<<"\nMedia = "<< r<<"\n";
system ("pause");
}
Os elementos são pesquisados aleatoriamente. Pior caso: o elemento está no último índice do meu vetor.
Os elementos são pesquisados de acordo com o índice. Pior caso: o elemento está no primeiro índice do
meu vetor.
Os elementos são pesquisados de acordo com o índice. Melhor caso: o elemento está no meio do meu
vetor.
Os elementos são pesquisados de acordo com o índice. Melhor caso: o elemento está no último índice do
meu vetor.
Os elementos são pesquisados de acordo com o índice. Pior caso: o elemento está no último índice do
meu vetor.
Em uma lista linear com alocação duplamente encadeada os nós da estrutura ocupam espaços aleatórios
na memória e cada nó armazena além da sua informação os endereços do nó anterior e do próximo nó
da estrutura.
Existem várias formas de apresentação de listas lineares, como listas circulares e as matrizes, que são
formas exclusivas das listas de alocação encadeada.
Em uma lista linear com alocação sequencial, os dados são heterogêneos e os nós da lista podem ter
tamanhos diferentes, mas exigem espaço em endereço contíguo de memória.
Fila e Pilha são tipos especiais de listas lineares. Na Fila, o último que entra é o primeiro que sai,
enquanto na Pilha, o primeiro que entra é o primeiro que sai.
A lista binária é uma forma não-linear de organização dos dados. Existe um nó denominado raiz da
árvore, que pode ter duas ou mais sub-árvores, que por sua vez também podem ter outras sub-árvores.
Pontos: 1,0
1a Questão (Cód.: 27760)
/ 1,0
Estão entre algumas das possíveis formas de se estruturar dados:
Pontos: 1,0
2a Questão (Cód.: 28089)
/ 1,0
Qual das alternativas a seguir pode definir uma estrutura de fila?
Pontos: 1,0
3a Questão (Cód.: 27591)
/ 1,0
O que acontece ao se inserir uma informação quando já usamos toda a área disponível do vetor (topo
= fim)?
overflow
underflow
ordenação
inclusão
remoção
Pontos: 1,0
4a Questão (Cód.: 27606)
/ 1,0
A técnica LIFO (last in first out), utilizada em programação estruturada, é fundamentada no conceito
de:
Loop
Pilha
Fila
Registro
Ponteiro
Pontos: 1,0
5a Questão (Cód.: 28139)
/ 1,0
Na área de estrutura de dados, em determinados casos, é necessário utilizar um tipo de dado onde
seu valor serve como referência direta a outro valor alocado em outro espaço de memória. Este tipo
de dado se chama:
Variável
Endereço
Matriz
Vetor
Ponteiro
Pontos: 0,0
6a Questão (Cód.: 19729)
/ 1,0
Em relação às estruturas de dados, é correto afirmar:
Pontos: 1,0
7a Questão (Cód.: 19684)
/ 1,0
Analise as seguintes afirmações: I. Na Passagem por Referência, o parâmetro que vai ser passado na
chamada da função deve ser uma variável, de tal forma que uma alteração de valor neste parâmetro
também altera a variável correspondente. II. Uma recursão consiste em uma função chamar ela
mesma com argumentos sempre do mesmo valor. III. Considerando-se o escopo das variáveis, é
correto afirmar que uma variável é dita global quando a sua passagem no momento da chamada de
uma função se dá tanto por valor quanto por referência. Uma variável é dita local quando esta
passagem se dá apenas por valor. Indique a opção que contenha todas as afirmações verdadeiras.
Pontos: 0,0
8a Questão (Cód.: 28011)
/ 1,0
Suponha que uma pilha, P1, esta descrita através de uma lista encadeada como apresentado na figura a
seguir:
Suponha ainda que, a pilha P2 fosse preenchida com os elementos removidos de P1.
Qual seria a saída apresentada na tela, caso o conteúdo da pilha P2 fosse sendo removido e, cada elemento retirado de P2, fosse
apresentado na tela?
Suponha agora que ao invés da pilha P2, uma fila F1 (inicialmente vazia) fosse usada. Assim, fila F1 fosse preenchida com os
elementos removidos da pilha P1.
Qual seria a saída apresentada na tela, caso o conteúdo da fila F1 fosse sendo removido e, cada elemento retirado de F1, fosse
apresentado na tela?
MARROCOS/SOCORRAM.
SOCORRAM/SOCORRAM.
SOCORRAM/MARROCOS.
Nada seria apresentado, pois a pilha P2, assim como a fila F1 estão vazias.
MARROCOS/MARROCOS.
Pontos: 0,0
9a Questão (Cód.: 19731)
/ 1,0
Considerando as definições de estruturas de dados e a declaração tipo nó :: reg (dado: inteiro;
próximo: ref nó), na qual reg é um registro contendo os campos: dado, que guarda valores inteiros, e
próximo, que guarda endereço de outro nó, assinale a opção correta:
O algoritmo para inclusão de elementos em uma pilha é usado sem nenhuma alteração para
incluir elementos em uma lista.
Uma lista duplamente encadeada é uma lista em que o seu último elemento referencia o
primeiro.
O uso de recursividade é totalmente inadequado na implementação de operações para
manipular elementos de uma estrutura de dados do tipo vetor.
As listas, pilhas, filas e árvores são estruturas de dados que têm como principal característica a
sequencialidade dos seus elementos.
O tipo nó é inadequado para implementar estruturas de dados do tipo pilha.
Pontos: 1,0
10a Questão (Cód.: 31186)
/ 1,0
Em algumas situações, principalmente na utilização de listas, há a necessidade de posicionar o
ponteiro em determinado local da lista. Dessa forma, analisando o trecho de código abaixo, que
mostra uma função, assinale a alternativa correta que descreve o objetivo desta. Sabe-se que o sinal
de asterisco (*) sinaliza um ponteiro.
Avaliação On-Line
Avaliação: AV3-2012.1 EAD - ESTRUTURA DE DADOS - CCT0174
Disciplina: CCT0174 - ESTRUTURA DE DADOS
Tipo de Avaliação: AV3
Aluno: 201001509341 - RAPHAEL DA SILVA ROMA
Nota da Prova: 6 Nota do Trabalho: Nota da Participação: Total: 6
Prova On-Line
Questão: 1 (220382)
Para utilizarmos as structs, podemos criar variáveis e / ou vetores para manipular seus valores.
Supondo o seguinte registro:
struct funcionario{
char nome[50];
int matricula;
};
Das opções apresentadas qual esta correta na criação de um vetor dentro do main(), para o registro
funcionario? Pontos da Questão: 1
struct nome[50], matricula func;
funcionario func;
struct funcionario[40] func;
struct func funcionario[40];
funcionario func[40];
Questão: 2 (139724)
Nas listas encadeadas podemos fazer referência a uma parte de um nó, através de um outro nó. Na estrutura
apresentada o ponteiro p armazena o endereço do próximo nó.
struct teste {
int valor;
struct teste *p;
};
Das opções apresentadas qual permite armazenar na variável val do tipo inteiro o valor que está no nó
seguinte ao nó posicionado , sabendo-se que aux, contem o endereço do nó atual.
Pontos da Questão: 1
val= aux->p->valor;
val= aux->valor;
val= p->p->valor;
val-> aux->p->valor;
val= aux->p.p;
Questão: 3 (127056)
Sabe-se que um protótipo de uma função é o cabeçalho da função com ;(ponto-e-vírgula) ao final. E que nas
funções a passagem de parâmetros se dá por valor ou por referência.
Para o protótipo: void troca(float&,float&); pode-se dizer que:
Pontos da Questão: 1
É um protótipo de função que recebe dois argumentos por passagem de valor. Os dois do tipo real e
https://sia.estacio.br/portal/prt0010a.asp?p1=3950270&p2=10959&p3=1135304 02/07/2012
Visualização de Prova Página 2 de 6
retorna, para a função chamadora, um valor inteiro.
É um protótipo de função que recebe dois argumentos reais e retorna, para a função chamadora, um valor
real.
É um protótipo de função que recebe dois argumentos que são endereços que armazenam números reais,
por passagem por referência. E a função não retorna nada para a função chamadora.
É um protótipo de função que recebe dois argumentos reais por passagem de valor e não retorna nada
para função chamadora.
É um protótipo de função que recebe dois argumentos por passagem de valor. Um do tipo char e outro do
tipo int, mas não retorna nada para função chamadora.
Questão: 4 (138994)
Assinale a opção correta. A função que calcula a quantidade de elementos de uma fila dinâmica, considerando
struct no {
int dado;
struct no *link;
};
é:
Pontos da Questão: 1
contador = 0;
while (p != NULL)
{
p = p->link;
}
return contador;
}
int contar(no *p)
{
int contador;
contador = 0;
while (p == NULL)
{
p = p->link;
contador++;
}
return contador;
}
https://sia.estacio.br/portal/prt0010a.asp?p1=3950270&p2=10959&p3=1135304 02/07/2012
Visualização de Prova Página 3 de 6
int contador;
contador = 0;
while (p != NULL)
{
contador++;
p = p->link;
}
return contador;
}
contador = 0;
while (p != NULL)
{
contador++;
}
return contador;
}
Questão: 5 (127834)
Assinale a opção correta.
Eureka(v);
sendo a função
void Eureka(int v[ ]) {
for (int i = 0; i < 4; i++)
v[i] = 2 * i;
}
0 20 40 60
20 40 60 80
1 2 4 6
0 2 4 6
0 2 4 6 8
Questão: 6 (127828)
O algoritmo da busca binária é mais eficiente que o da busca sequencial. Entretanto, este algoritmo só pode
ser utilizado em vetores ordenados. Marque a opção que explica esta limitação do algoritmo. Pontos da Questão: 1
A ordenação é necessária, pois quando o algoritmo realiza busca de dados numéricos, o espaço de busca é
dividido e esta divisão deve ser exata.
A ordenação é utilizada no algoritmo de busca binária, apenas para facilitar a localização do elemento
procurado. Caso contrário a busca é realizada de modo similar ao da busca sequencial.
https://sia.estacio.br/portal/prt0010a.asp?p1=3950270&p2=10959&p3=1135304 02/07/2012
Visualização de Prova Página 4 de 6
A ordenação não é uma limitação apenas do algoritmo de pesquisa binária. Todos os algoritmos de
pesquisa ou busca em vetor apresentam esta limitação.
A ordenação dos dados é importante, pois após a divisão do espaço de busca, a parte dos dados
descartados não pode conter o elemento procurado.
A ordenação é uma limitação natural dos métodos de pesquisa em vetores. Para realizar a busca em um
vetor os algoritmos devem sempre garantir que os mesmos estão ordenados.
Questão: 7 (128267)
Considere a função que deve implementar a busca seqüencial. Note que ela está incompleta e que você deve
completá-la.
https://sia.estacio.br/portal/prt0010a.asp?p1=3950270&p2=10959&p3=1135304 02/07/2012
Visualização de Prova Página 5 de 6
{
int i;
Questão: 8 (129226)
No desenvolvimento de sistemas podemos recorrer as mais diversas estruturas de dados a fim de propor a
melhor solução para determinados problemas.
Supondo que um problema sugere a necessidade de armazenar temporariamente alguns dados (Endereço,
telefone e idade) de uma determinada pessoa, qual das estruturas é a mais adequada?
Pontos da Questão: 1
Fila
Vetor
Pilha
Struct
Lista
Questão: 9 (138991)
Assinale a opção correta. Pilha é uma estrutura de dados que : Pontos da Questão: 1
segue o critério LIFO, pois pode-se inserir (ou remover) em (de) qualquer posição, já que é sempre
dinâmica.
segue o critério LIFO e pode ser implementada usando-se lista seqüencial ou lista encadeada.
segue o critério FIFO e é sempre implementada usando-se lista seqüencial.
não segue critério algum, pois pode-se inserirr em qualquer posição, já que é sempre sequencial.
segue o critério FIFO e é sempre dinâmica.
Questão: 10 (139130)
Considere
struct nodupla {
int dado;
struct *dlink, //aponta para o nó à direita
*elink; //aponta para o nó à esquerda
};
https://sia.estacio.br/portal/prt0010a.asp?p1=3950270&p2=10959&p3=1135304 02/07/2012
Visualização de Prova Página 6 de 6
Assinale a função que corretamente substitui o valor armazenado no último nó de uma lista duplamente
encadeada não vazia pelo valor 50.
Pontos da Questão: 1
Fechar
Server IP : 192.168.10.139 Client IP: 187.67.226.236 Tempo de execução da página : 1,422
https://sia.estacio.br/portal/prt0010a.asp?p1=3950270&p2=10959&p3=1135304 02/07/2012
Fe cha r
A estrutura de dados linear que obedece o seguinte critério: o último elemento inserido será o primeiro
elemento a ser retirado (LIFO) é:
árvore binária.
árvore AVL.
fila.
pilha.
lista circular.
Um apontador é uma variável que contém o endereço de outra variável. Apontadores são muito usados, em
parte porque são, às vezes, a única forma de se expressar um processo de computação e, em parte, porque,
normalmente, implicam um código mais compacto e eficiente que o obtido de outras formas. C onsiderando o
uso de apontadores nas linguagens procedurais atuais, julgue os itens que se seguem com E se for errado e C
se for certo.
( ) O uso de apontadores como argumentos de funções que realizem chamada por valor não permite alteração
de seus conteúdos de memória na função.
( ) Arranjos de apontadores podem ser usados em funções que recebam como argumentos um número
variável de cadeias de caracteres.
( ) Em geral, para que um arranjo seja percorrido por um ponteiro, para cada elemento do arranjo deve-se
adicionar ao ponteiro o número de bytes que o elemento ocupa em memória.
b) C - C - E - E - E
a) E - C - E - C - E
d) E - C - E - C - C
c) E - E - C - C - E
e) C - E - C - E - C
4a Questão (C ód.: 28119) Pontos: 1,0 / 1,0
As listas encadeadas podem ser elaboradas de duas formas utilizando uma técnica de encadeamento
simplesmente ou encadeamento duplo. O que difere uma lista simplesmente encadeada de uma lista
duplamente encadeada?
Em uma lista duplamente encadeada, cada nó aponta para um nó enquanto a lista simplesmente
encadeada aponta para mais de um nó.
Em uma lista duplamente encadeada cada nó aponta para nó seguinte e para o primeiro nó da fila.
Em uma lista duplamente encadeada cada nó aponta para nó seguinte.
Em uma lista simplesmente encadeada cada nó aponta para nó seguinte e para o nó anterior.
Em uma lista simplesmente encadeada cada nó aponta para um único nó enquanto a lista duplamente
encadeada aponta para mais de um nó.
II - Um elemento de uma lista linear sequencial pode ser ac essado diretamente através de um
índice.
III - Uma lista linear sequencial pode ter elementos de um mesmo tipo, ou de tipos diferentes.
Apenas as afirmações I e II estão corretas.
Apenas as afirmações I e III estão corretas.
Apenas as afirmações II e III estão corretas.
Apenas as afirmações II está corretas.
Apenas a afirmação I está correta.
As funções em programação permitem que se possa realizar a modularização do código diminuindo assim sua
complexidade. Analise a função abaixo e assinale alternativa que descreve corretamente o tipo de função:
int funcao (int x){
if(x == 0)
return 0;
else
funcao(x-1);
}
Sequencial
Igual a zero
Recursiva
C ondicional de seleção
Passagem por referência
As estruturas de dados em programação são muito utilizadas para tornar o acesso aos dados mais eficiente e
organizado. A estrutura de dados considerada mais simples e tem como característica apresentar apenas uma
dimensão é:
Matriz
Registro
Função
Vetor
Variável
O resultado do concurso para o cargo de uma empresa está armazenado em um vetor, que contém em cada um
de seus elementos o número de inscrição, o nome e a nota obtida pelo candidato. Este vetor está ordenado pelo
número de inscrição. Para realização de uma consulta que, dado um número de inscrição, apresenta o nome e
nota do candidato, um programador utilizou um algoritmo de busca que realiza sucessivas divisões no vetor,
comparando o número de inscrição procurado com o número de inscrição do candidato posicionado no meio do
vetor. Se o candidato posicionado do meio do vetor tiver o número de inscrição igual ao número de inscrição
procurado, a busca termina com sucesso. C aso contrário, se candidato posicionado do meio do vetor tiver
número de inscrição menor que o procurado, então a busca continua na metade posterior do vetor. E
finalmente, se candidato posicionado do meio do vetor tiver número de inscrição maior que o procurado, a
busca continua na metade anterior do vetor. O algoritmo utilizado pelo programador trata-se do método
denominado busca:
linear.
binária.
por contagem.
randômica.
por comparação.
1a Questão (Ref.: 201303061506) Pontos: 0,8 / 0,8
As estruturas de dados em programação são muito utilizadas para tornar o acesso aos dados mais eficiente e
organizado. A estrutura de dados considerada mais simples e tem como característica apresentar apenas uma
dimensão é:
Variável
Vetor
Registro
Função
Matriz
Intercalar a ordem dos dados da lista do final para o início, atualizando a lista.
Organizar os dados da lista em ordem crescente ou decrescente.
Consiste em dividir a lista em duas outras listas. A quantidade de nós que cada lista terá,
depende da necessidade.
Juntar duas listas, colocando uma lista no final de outra, obtendo, ao final, uma só lista resultante.
Alterar a ordem dos dados da lista do final para o início, atualizando a lista.
Resposta:
Gabarito: no *insere_frente(no *p, int valor) { no *q; q = new no; q->dado = valor; q->link = p;
return q; } no *inter(no *x, no *y) { no *t, *r, *q; t = x; q = NULL; do { r = y; do { if (t->dado == r-
>dado) q = insere_frente(q,t->dado); r = r->link; } while (r != y); t = t->link; } while (t != x);
return q; }
4a Questão (Ref.: 201303061505) Pontos: 0,8 / 0,8
As variáveis em programação são utilizadas para armazenar um valor de determinado tipo em um espaço
reservado na memória. Em algumas linguagens de programação podemos declarar, ou seja, reservar um espaço
na memória, fora do escopo da função principal, e fora do escopo de qualquer outra função. Ao fazer a
declaração desta forma estamos declarando uma variável do tipo:
Global
Constante
Local
Inteiro
Real
Consiste em adicionar um valor no vetor, alterando a ordem existente e ajustando o total de elementos.
Consiste em fazer uma busca em um vetor desordenado, dividindo o espaço de busca ao meio e
verificando se o dado está no meio ou, antes do meio ou depois do meio.
É o processo pelo qual um conjunto de dados é colocado em uma ordem crescente ou decrescente.
Consiste em fazer uma busca em um vetor já ordenado, dividindo o espaço de busca ao meio e
verificando se o dado está no meio ou, antes do meio ou depois do meio.
Consiste em adicionar um valor no vetor, mantendo a ordem existente e ajustando o total de
elementos.
Se a e b são variáveis inteiras (int) e p1 e p2 ponteiros para int, quais das seguintes expressões de atribuição
está errada?
a = (*p1 + *p2)/b+1;
p1 = &a;
b = *p2;
*p2 = &b;
*p2 = *p1;
Analisando a seqüência do código abaixo, pode se afirmar que se trata da: for (int i = topo-1; i>=0 ; i--) cout
<< " "<< v[i] <<" "<
Os métodos de ordenação são muito utilizados em estruturas de dados para facilitar a busca e a recuperação
posterior de itens de conjuntos ordenados. Existem vários métodos de ordenação, por este motivo, marque
corretamente a alternativa que apresenta o código do método de seleção.
Analisando a figura abaixo, marque a alternativa correta que apresenta o tipo de estrutura de dados utilizado.
Fila
Matriz
Pilha
Struct
Hash
Os registros também conhecidos como estruturas, são estruturas de dados do tipo heterogêneo, ou seja,
permitem que valores de tipos diferentes possam ser armazenados em uma mesma estrutura. Analisando a
estrutura abaixo, a mesma pode ser utilizada para qual tipo de estrutura de ordenação, marque a alternativa
correta.
struct nomeRegistro{
int info;
struct nomeRegistro* ant;
struct nomeRegistro* prox;
};
Pilha
Lista encadeada
Matriz
Lista duplamente encadeada
Fila
Resposta: Pilha: Estrutura de dados em que os elementos são alocados da maneira LIFO (Last In First Out -
Último que Entra é o Primeiro que Sai); as entradas de elementos são realizadas por apenas 1 (uma)
extremidade. Fila: Estrutura de dados em que os elementos são alocados da maneira FIFO (First In First Out -
Primeiro que Entra é o Primeiro que Sai); as entradas de elementos podem ser realizadas pelas 2 (duas)
extremidades.
Gabarito: Pilha se caracteriza por ser uma estrutura de dados que são inseridos e retirados numa
sequencia semelhante as anilhas de alteres, isto é, usa a lógica LIFO. Já uma fila se caracteriza por
ser um estrutura semelhante a fila de banco, isto é, os dados vão chegando e sendo processados e
retirados da estrutura. Essa lógica é chamada de FIFO.
Fechar
Tipo de Avaliação: AV
Vetor
Pilha
Loop
Registro
Fila
Resposta: no *inter(no *x, no*y){ int qnox=0, qnoy=0,c=0; while(x->link != NULL) qno++; while(y->link
while(c<qno,c++) while(x.dado[c] == y.dado[c]
Gabarito: no *insere_frente(no *p, int valor) { no *q; q = new no; q->dado = valor; q->link = p; return q; }
no *inter(no *x, no *y) { no *t, *r, *q; t = x; q = NULL; do { r = y; do { if (t->dado == r->dado) q =
insere_frente(q,t->dado); r = r->link; } while (r != y); t = t->link; } while (t != x); return q; }
Na estrutura de dados tipo pilha, há duas operações básicas para empilhamento e desempilhamento. Essas
operações são conhecidas como:
PUSH e PULL;
PUSH e POP.
HEAP e POP;
Base e Topo;
PULL e POP;
Inserção
Seleção
Binária
Hash
Bolha
Os agentes Peter e Paul receberam mensagens de seus contatos. Para saberem qual o próximo passo da
missão, precisam intercalar as duas mensagens recebidas, que sabe-se, são do mesmo tamanho.
Faça uma função que receba dois vetores v e w como parâmetros, cada um com n elementos, e gere um vetor
z, resultante da intercalação entre v e w.
Mensagem 1 : ECPM
Mensagem 2 : SAE!
Gabarito:
int i;
z[i*2] = v[i];
z[i*2 + 1] = w[i];
z[2*n] = '\0';
Analise as seguintes afirmações: I. Na Passagem por Referência, o parâmetro que vai ser passado na chamada
da função deve ser uma variável, de tal forma que uma alteração de valor neste parâmetro também altera a
variável correspondente. II. Uma recursão consiste em uma função chamar ela mesma com argumentos sempre
do mesmo valor. III. Considerando-se o escopo das variáveis, é correto afirmar que uma variável é dita global
quando a sua passagem no momento da chamada de uma função se dá tanto por valor quanto por referência.
Uma variável é dita local quando esta passagem se dá apenas por valor. Indique a opção que contenha todas as
afirmações verdadeiras.
II e III.
I e II.
I e III.
somente a alternativa e II.
somente a alternativa I.
Seja Q uma estrutura de dados do tipo fila, em que ENQUEUE(X) significa a adição do elemento X à Q e que
DEQUEUE(), a retirada de um elemento. Q está inicialmente vazia e sofre a seguinte sequencia de operações:
ENQUEUE(1)
ENQUEUE(2)
DEQUEUE()
ENQUEUE(3)
ENQUEUE(4)
DEQUEUE()
DEQUEUE()
ENQUEUE(5)
5
6
9
15
0
Analisando o trecho de código abaixo, marque a alternativa correta que apresenta o que será impresso na tela
do usuário. Sabe-se que na linguagem C os ponteiros são representados pelo sinal de asterisco (*), o endereço
de memória pelo sinal & e a função de impressão é denominada printf.
void funcao ( int *a, int *b)
{
int c;
c = *a;
a = b;
*b = c;
}
main()
{
int a=2, b=3;
funcao (&a, &b);
printf("%d - %d \n",a,b);
}
3-3
2-2
3-2
2-3
Não irá compilar
Determinados tipos de estrutura de dados, são utilizados para implementar um algoritmo de escalonamento de
processos do sistema operacional UNIX, chamado Round Robin, onde cada processo ganha uma fatia de tempo.
Esse tipo de estrutura de dados é chamado de:
Tabela Hash
Lista encadeada
Pilha
Lista duplamente encadeada
Método Bolha
11a Questão (Ref.: 201301277828) Pontos: 0,8 / 0,8
O espaço necessário para a representação dos dados pode ser alocado à medida que se torne necessário,
através da alocação dinâmica. Uma estrutura armazenada através de encadeamento apresenta seus nodos
alocados em posições aleatórias na memória, e não lado a lado. Dessa forma, existem várias vantagens no uso
de representar os dados por encadeamento. Marque a alternativa correta que apresenta estas vantagens.
C onsiste em fazer uma busca em um vetor desordenado, dividindo o espaço de busca ao meio e
verificando se o dado está no meio ou, antes do meio ou depois do meio.
C onsiste em adicionar um valor no vetor, alterando a ordem existente e ajustando o total de elementos.
C onsiste em adicionar um valor no vetor, mantendo a ordem existente e ajustando o total de elementos.
C onsiste em fazer uma busca em um vetor já ordenado, dividindo o espaço de busca ao meio e
verificando se o dado está no meio ou, antes do meio ou depois do meio.
É o processo pelo qual um conjunto de dados é colocado em uma ordem crescente ou decrescente.
Resposta: O FIFO é a lógica da fila: o primeiro elemento que entra, é o primeiro elemento que vai sair.
O almoxarifado de um órgão pediu ao técnico de informática que elaborasse um sistema de custeio que, para
cada saída de material, considerasse o custo do mais recente que houvera dado entrada no almoxarifado. O
técnico deve desenvolver um programa para tratar com uma estrutura de dados do tipo?
REC ORD
FIFO
ARRAY
LIFO
TABLE
I. Pilha é uma estrutura de dados com acesso restrito aos seus elementos, uma vez que eles são colocados e
retirados por um único lado e são ordenados pelo princípio LIFO (last in first out). Assim, sempre que um
elemento é adicionado ou retirado seu topo é alterado.
II. Pilha é o tipo de estrutura usada, por exemplo, na avaliação de expressões numéricas, na recursividade e
pelos compiladores, na passagem de parâmetros para as funções.
III. Registro é uma estrutura básica que permite guardar coleções de dados de diferentes tipos, sendo
normalmente utilizado quando um objeto tem diferentes atributos, isto é, contém campos de diferentes tipos.
IV. Lista pode conter um número qualquer de elementos, expandindo-se ou contraindo-se conforme o
elementos são inseridos ou retirados. Nesse tipo de estrutura, os acessos tanto podem ser feitos
sequencialmente como diretamente.
V. Fila, assim como a pilha , é uma versão especial de lista, e como tal, seus elementos são ordenados pelo
princípio LIFO (last in first out).
II, IV e V.
I, III, IV e V.
I, III e V.
II, III, IV e V.
I, II e III.
Resposta: Em relação entre a lógica da pilha e da fila: no caso da pilha (LIFO): o ultimo elemento que entrou
será o primeiro elemento a sair. ( um exemplo: é como se fosse uma pilha de pratos,o ultimo prato a ser
colocado nessa pilha, logo será o primeiro prato a ser retirado.Nessa pilha o primeiro prato colocado na pilha
será o ultimo a sair). nocaso da fila (FIFO): o primeiro elemento que entrou será o primeiro elemento a sair. (
um exemplo: é como se fosse uma fila de um banco, a primeira pessoa que entrou na fila e foi atendida,logo
será a primeira a sair.Nessa fila a ultima pessoa que entra será a ultima pessoa a sair).
Gabarito: Pilha se caracteriza por ser uma estrutura de dados que são inseridos e retirados numa sequencia
semelhante as anilhas de alteres, isto é, usa a lógica LIFO. Já uma fila se caracteriza por ser um estrutura
semelhante a fila de banco, isto é, os dados vão chegando e sendo processados e retirados da estrutura. Essa
lógica é chamada de FIFO.
Analisando a figura abaixo, marque a alternativa correta que apresenta o tipo de estrutura de dados utilizado.
Struct
Matriz
Fila
Hash
Pilha
Knuth-Morris-Pratt.
Boyer-Moore.
binária.
em tabelas.
linear.
Existem vários algoritmos de busca em estruturas de dados, um destes realiza a busca em vetores, e requer
acesso aleatório aos elementos desta estrutura e parte do pressuposto de que os dados do vetor estejam
ordenados e utiliza a técnica de divisão e conquista comparando o elemento desejado com o elemento do meio
do vetor. Esta técnica ainda verifica se o elemento do meio do vetor for o desejado, a busca termina. C aso
contrário, se o elemento do meio vier antes do elemento buscado, então a busca continua na metade posterior
do vetor. E se o elemento do meio vier depois da chave, a busca continua na metade anterior do vetor. O
algoritmo que utiliza esta metodologia é:
Pesquisa sequencial
Inserção
Bolha
Pesquisa binária
Seleção
Nota da Prova: 4,5 de 8,0 Nota do Trabalho: Nota de Participação: 2 Data: 13/06/2013 17:31:25
a
1 Questão (Cód.: 31188) Pontos: 0,0 / 1,0
Analisando o trecho de código abaixo, marque a alternativa correta que apresenta o que será impresso na tela do
usuário. Sabe-se que na linguagem C os ponteiros são representados pelo sinal de asterisco (*), o endereço de
memória pelo sinal & e a função de impressão é denominada printf.
void funcao ( int *a, int *b)
{
int c;
c = *a;
a = b;
*b = c;
}
main()
{
int a=2, b=3;
funcao (&a, &b);
printf("%d - %d \n",a,b);
}
3-3
Não irá compilar
2-2
3-2
2-3
a
2 Questão (Cód.: 27759) Pontos: 0,0 / 0,5
A entrada, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
solução do problema.
O que permite o armazenamento e a recuperação de dados independentemente de seu conteúdo.
A saída, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
solução do problema.
O meio para armazenar e organizar dados com o objetivo de facilitar o acesso e as modificações.
Uma sequência de passos computacionais que transforma uma entrada em uma saída previamente
determinada.
a
3 Questão (Cód.: 95240) Pontos: 0,5 / 0,5
Na estrutura de dados tipo pilha, há duas operações básicas para empilhamento e desempilhamento. Essas
operações são conhecidas como:
1 de 4 19/06/2013 15:26
BDQ Prova file:///C:/Users/ecio/Google Drive/HJV/Diversos/Estácio_files/prova_r...
HEAP e POP;
PULL e POP;
PUSH e POP.
Base e Topo;
PUSH e PULL;
a
4 Questão (Cód.: 58564) Pontos: 1,5 / 1,5
Resposta: A lógica do FIFO é a de que o primeiro item a entrar deve ser o primeiro a sair, como acontece numa fila
por ordem de chegada. Quem chegar primeiro será logo atendido e liberado.
a
5 Questão (Cód.: 27578) Pontos: 0,5 / 0,5
Diga, para o programa abaixo, qual a opção que melhor representa a saída em tela. (Considere que o programa
será compilado sem erros, e irá executar também sem problemas).
#include
int tmp;
tmp = *y;
*y = x * 2;
x = tmp+1;
int main()
system("pause");
Valores: 13, 10
Valores: 13, 20
Valores: 10, 10
Valores: 20, 10
Valores: 10, 20
2 de 4 19/06/2013 15:26
BDQ Prova file:///C:/Users/ecio/Google Drive/HJV/Diversos/Estácio_files/prova_r...
a
6 Questão (Cód.: 31184) Pontos: 0,0 / 1,0
Existem vários tipos de algoritmos para realizar a ordenação dos elementos, onde um algoritmo de ordenação deve
rearranjar o vetor de forma a estabelecer uma ordem entre os elementos. Marque a alternativa correta que cita o
algoritmo cuja descrição é: "considera cada elemento uma vez inserindo-o em seu lugar correto entre os elementos
que já estão em ordem". E o seu passo a passo pode ser descrito como: "o elemento é inserido entre os ordenados
movendo-se os elementos maiores que ele uma posição para a direita e posteriormente inserindo-o na posição
vaga".
Bolha
Inserção
MergeSort
Seleção
QuickSort
a
7 Questão (Cód.: 28112) Pontos: 0,0 / 0,5
Sistemas operacionais utilizam filas para gerenciar, tarefas, processos e recursos. Qual é a ordenação dos
elementos armazenados aleatoriamente em uma lista do tipo LIFO?
Ordem de entrada
Ordem decrescente
Ordem crescente
Posições aleatórias
Primeiro que entra é o primeiro a sair
a
8 Questão (Cód.: 28036) Pontos: 0,0 / 0,5
Considerando que a lista a seguir, encontra-se criada na memória, o que será exibido pelo trecho de programa a seguir:
aux = inicio;
aux = inicio;
3 de 4 19/06/2013 15:26
BDQ Prova file:///C:/Users/ecio/Google Drive/HJV/Diversos/Estácio_files/prova_r...
HKM
NULL
H
HKMF
a
9 Questão (Cód.: 58562) Pontos: 1,5 / 1,5
Resposta: A diferença entre pilha e fila está forma como estes algoritimos tratam as listas, no caso da pilha, o
último a chegar é o primeiro a sair, um exemplo disso pode ser visto nos restaurantes self-service, a medida que os
pratos são lavados vão sendo postos em cima dos que foram lavados primeiro, e quando os pratos são levados ao
centro do restaurante os últimos pratos lavados são os primeiros a serem utilizados pelas pessoas. No caso da fila,
a ordem de chegada e saída segue o modelo tradicional, onde os primeiros a chegar, devem ser os primeiros a
serem atendidos e dessa forma, são os primeiros a sair.
Gabarito: Pilha se caracteriza por ser uma estrutura de dados que são inseridos e retirados numa sequencia
semelhante as anilhas de alteres, isto é, usa a lógica LIFO. Já uma fila se caracteriza por ser um estrutura
semelhante a fila de banco, isto é, os dados vão chegando e sendo processados e retirados da estrutura. Essa
lógica é chamada de FIFO.
a
10 Questão (Cód.: 19663) Pontos: 0,5 / 0,5
Assinale a alternativa que apresenta duas formas de passagem de parâmetros para uma rotina ou função:
4 de 4 19/06/2013 15:26
Avaliação: CCT0174_AV2_201107053692 » ESTRUTURA DE DADOS
Nota da Prova: 5,5 de 8,0 Nota do Trabalho: Nota de Participação: 0 Data: 11/06/2013 09:36:42
Se a e b são variáveis inteiras (int) e p1 e p2 ponteiros para int, quais das seguintes expressões de atribuição
está errada?
a = (*p1 + *p2)/b+1;
p1 = &a;
*p2 = *p1;
b = *p2;
*p2 = &b;
A estrutura de dados linear que obedece o seguinte critério: o último elemento inserido será o primeiro
elemento a ser retirado (LIFO) é:
lista circular.
árvore binária.
pilha.
árvore AVL.
fila.
Seja Q uma estrutura de dados do tipo fila, em que ENQUEUE(X) significa a adição do elemento X à Q e que
DEQUEUE(), a retirada de um elemento. Q está inicialmente vazia e sofre a seguinte sequencia de operações:
ENQUEUE(1)
ENQUEUE(2)
DEQUEUE()
ENQUEUE(3)
ENQUEUE(4)
DEQUEUE()
DEQUEUE()
ENQUEUE(5)
5
0
6
15
9
int main() {
int a, b, *p;
a=4;
b = 2;
p = &a;
a++;
*p = a + b;
(*p)++;
(*p) += a;
return(0);
8
5
4
7
16
Existem vários tipos de algoritmos para realizar a ordenação dos elementos, onde um algoritmo de ordenação
deve rearranjar o vetor de forma a estabelecer uma ordem entre os elementos. Marque a alternativa correta
que cita o algoritmo cuja descrição é: "considera cada elemento uma vez inserindo-o em seu lugar correto entre
os elementos que já estão em ordem". E o seu passo a passo pode ser descrito como: "o elemento é inserido
entre os ordenados movendo-se os elementos maiores que ele uma posição para a direita e posteriormente
inserindo-o na posição vaga".
Inserção
Seleção
MergeSort
QuickSort
Bolha
( ) Nas listas encadeadas não precisamos saber previamente o número de elementos a serem armazenados.
( ) Podemos aumentar e diminuir o tamanho da lista encadeada quando quisermos, enquanto que a lista sequencial não.
( ) Quando o número de acessos randômicos a uma área de armazenamento é muito maior que o número de inserções e
remoções de elementos armazenados, a organização dessa área de armazenamento por meio de uma lista
encadeada resulta em desempenho melhor que o apresentado por organização feita usando uma lista linear.
VFV
VVF
FVF
VVV
FVV
Assinale a alternativa que apresenta duas formas de passagem de parâmetros para uma rotina ou função:
Analisando o trecho de código abaixo, marque a alternativa correta que apresenta o que será impresso na tela
do usuário. Sabe-se que na linguagem C os ponteiros são representados pelo sinal de asterisco (*), o endereço
de memória pelo sinal & e a função de impressão é denominada printf.
void funcao ( int *a, int *b)
{
int c;
c = *a;
a = b;
*b = c;
}
main()
{
int a=2, b=3;
funcao (&a, &b);
printf("%d - %d \n",a,b);
}
Pilha.
Array.
Fila.
Ponteiro.
Loop.
Faça uma função para inverter a lista e retornar o ponteiro para o início da lista resultante.
Protótipo : no *inverter(no *ini); //ini aponta para o início da lista
Resposta: { no a*, *b, *c; a = ini; b=NULL; while (a != NULL) { c = b; b = a; a = a-> link; b-> link = c; } ini =
b; return(ini) }
Gabarito: no *inverter ( no *ini) // ini é um ponteiro para o início da lista { no *a, *b, *c; a = ini; b = NULL;
while (a != NULL) { c = b; b = a; a = a->link; b->link = c; } ini = b; return(ini); } /* fim da função */
Seja Q uma estrutura de dados do tipo fila, em que ENQUEUE(X) significa a adição do elemento X à Q e que
DEQUEUE(), a retirada de um elemento. Q está inicialmente vazia e sofre a seguinte sequencia de operações:
ENQUEUE(1)
ENQUEUE(2)
DEQUEUE()
ENQUEUE(3)
ENQUEUE(4)
DEQUEUE()
DEQUEUE()
ENQUEUE(5)
15
0
9
5
6
#include
int tmp;
tmp = *y;
*y = x * 2;
x = tmp+1;
int main()
system("pause");
Valores: 10, 10
Valores: 10, 20
Valores: 13, 20
Valores: 20, 10
Valores: 13, 10
Existem vários tipos de algoritmos para realizar a ordenação dos elementos, onde um algoritmo de ordenação
deve rearranjar o vetor de forma a estabelecer uma ordem entre os elementos. Marque a alternativa correta
que cita o algoritmo cuja descrição é: "considera cada elemento uma vez inserindo-o em seu lugar correto
entre os elementos que já estão em ordem". E o seu passo a passo pode ser descrito como: "o elemento é
inserido entre os ordenados movendo-se os elementos maiores que ele uma posição para a direita e
posteriormente inserindo-o na posição vaga".
Inserção
MergeSort
Seleção
Bolha
QuickSort
( ) Podemos aumentar e diminuir o tamanho da lista encadeada quando quisermos, enquanto que
( ) Podemos aumentar e diminuir o tamanho da lista encadeada quando quisermos, enquanto que
a lista sequencial não.
( ) Quando o número de acessos randômicos a uma área de armazenamento é muito maior que o
número de inserções e remoções de elementos armazenados, a organização dessa área de
armazenamento por meio de uma lista encadeada resulta em desempenho melhor que o
apresentado por organização feita usando uma lista linear.
V V V
FV F
V FV
V V F
FV V
As estruturas de dados em programação são muito utilizadas para tornar o acesso aos dados mais eficiente e
organizado. A estrutura de dados considerada mais simples e tem como característica apresentar apenas uma
dimensão é:
Matriz
Vetor
Variável
Função
Registro
Aluno: Eu macesse
Nota da Prova: 6,5 de 8,0 Nota do Trabalho: Nota de Participação: 2 Data: 15/06/2013 11:21:07
Se a e b são variáveis inteiras (int) e p1 e p2 ponteiros para int, quais das seguintes expressões de atribuição
está errada?
p1 = &a;
*p2 = *p1;
*p2 = &b;
a = (*p1 + *p2)/b+1;
b = *p2;
As estruturas de dados permitem o uso de certos algoritmos para a ordenação dos elementos de forma a
facilitar a consulta de determinado elemento. Existem vários tipos de algoritmos para realizar a ordenação dos
elementos, onde um algoritmo de ordenação deve rearranjar o vetor de forma a estabelecer uma ordem entre
os elementos. O trecho de código abaixo descreve o algoritmo chamado:
MergeSort
QuickSort
Bolha
Inserção
Seleção
3a Questão (Cód.: 95243) Pontos: 0,5 / 0,5
Loop.
Pilha.
Fila.
Array.
Ponteiro.
Resposta: Os ultimos elementos a entrar são os primeros elementos a sair, exemplo de pilha.
A armazenagem de dados pode ocorrer temporariamente em uma variável, um vetor ou em uma estrutura
chamada Struct na linguagem C e C++. Como se procede a atribuição de valor a um determinado campo de
uma estrutura do tipo Struct?
Um órgão público adotou dois sistemas de senhas para atender os cidadãos na ordem de chegada. O sistema I
atende os não idosos. O sistema II atende os idosos. Nessa situação:
Resposta: Na Pilha, os ultimos elementos a entrar são os primeiros elementos a sair(LIFO) , e na fila os
primeiros elementos a entrar são os primeiros elemetos a sair(FIFO)
Gabarito: Pilha se caracteriza por ser uma estrutura de dados que são inseridos e retirados numa sequencia
semelhante as anilhas de alteres, isto é, usa a lógica LIFO. Já uma fila se caracteriza por ser um estrutura
semelhante a fila de banco, isto é, os dados vão chegando e sendo processados e retirados da estrutura. Essa
lógica é chamada de FIFO.
Com relação as afirmações abaixo, a respeito de lista lineares, assinale as Verdadeiras e asFalsas. Indique a alternativa
que representa a sequência correta:
( ) Nas listas encadeadas não precisamos saber previamente o número de elementos a serem armazenados.
( ) Podemos aumentar e diminuir o tamanho da lista encadeada quando quisermos, enquanto que a lista sequencial não.
( ) Quando o número de acessos randômicos a uma área de armazenamento é muito maior que o número de inserções e
remoções de elementos armazenados, a organização dessa área de armazenamento por meio de uma lista
encadeada resulta em desempenho melhor que o apresentado por organização feita usando uma lista linear.
VVF
FVF
VFV
VVV
FVV
Assinale a alternativa que apresenta duas formas de passagem de parâmetros para uma rotina ou função:
Nota da Prova: 4,0 de 8,0 Nota do Trabalho: Nota de Participação: 2 Data: 21/09/2012
a
1 Questão (Cód.: 27753) Pontos: 0,5 / 0,5
O meio para armazenar e organizar dados com o objetivo de facilitar o acesso e as modificações.
A entrada, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
solução do problema.
Uma sequência de passos computacionais que transforma uma entrada em uma saída previamente
determinada.
O que permite o armazenamento e a recuperação de dados independentemente de seu conteúdo.
É a saída, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
solução do problema.
a
2 Questão (Cód.: 27934) Pontos: 0,5 / 0,5
Sobre o funcionamento da busca binária, é correto afirmar que dividindo seu vetor em duas metades.
Se o item for igual ao item que está na metade do vetor, o item não foi encontrado.
Se o item for menor que o item que está na metade do vetor, procure na segunda metade, ou seja, a da
direita.
Se o item for maior que o item que está na metade do vetor procure na primeira metade, ou seja, a da
direita.
Se o item for igual ao item que está na metade do vetor, o item foi encontrado.
Se o item for menor que o item que está na metade do vetor, o item foi encontrado.
a
3 Questão (Cód.: 19660) Pontos: 0,5 / 0,5
Diferentes tipos de estrutura de dados são adequadas a diferentes tipos de aplicação e algumas são altamente
especializadas, destinando-se a algumas tarefas específicas. Dessa forma a definição de Estrutura de Dados está
expressa na alternativa:
1 de 4 16/11/2012 16:17
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
a
4 Questão (Cód.: 27933) Pontos: 0,5 / 0,5
Os elementos são pesquisados de acordo com o índice. Melhor caso: o elemento está no último índice do
meu vetor.
Os elementos são pesquisados de acordo com o índice. Pior caso: o elemento está no último índice do meu
vetor.
Os elementos são pesquisados de acordo com o índice. Pior caso: o elemento está no primeiro índice do
meu vetor.
Os elementos são pesquisados de acordo com o índice. Melhor caso: o elemento está no meio do meu
vetor.
Os elementos são pesquisados aleatoriamente. Pior caso: o elemento está no último índice do meu vetor.
a
5 Questão (Cód.: 27648) Pontos: 0,0 / 1,0
#include
x = 3.5;
int main () {
float y=1.5;
func1(y);
return 0;
1.5 1.5
1.5 1.5 0
1.5 1.5 3.5 1.5
1.5 1.5 0
1.5 1.5 3.5 1.5 0
a
6 Questão (Cód.: 77785) Pontos: 1,0 / 1,0
É um método de pesquisa ou busca, cujo algoritmo parte do pressuposto de que o vetor está
ordenado e realiza sucessivas divisões do espaço de busca, comparando o elemento buscado (chave)
com o elemento no meio do vetor. Se o elemento do meio do vetor for a chave, a busca termina com
sucesso. Caso contrário, se o elemento do meio vier antes do elemento buscado, então a busca
2 de 4 16/11/2012 16:17
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
continua na metade posterior do vetor. E finalmente, se o elemento do meio vier depois da chave, a
busca continua na metade anterior do vetor.
randômica.
por contagem.
por comparação.
linear.
binária.
a
7 Questão (Cód.: 28035) Pontos: 1,0 / 1,0
O resultado do concurso para o cargo de uma empresa está armazenado em um vetor, que contém em cada um de seus
elementos o nome e a nota obtida pelo candidato. Deseja-se que este vetor seja ordenado pela nota, em ordem decrescente.
Sendo o vetor pequeno (poucos elementos), o programador responsável por desenvolver este algoritmo, escolheu um
método de ordenação que executa os seguintes passos:
Selecione candidato com maior nota entre todos e troque-o com o candidato que está na primeira posição do vetor;
Selecione o segundo maior e troque-o com o candidato que está na segunda posição;
Os passos descritos anteriormente são seguidos para a terceira nota, quarta nota e assim por diante até que reste
apenas um candidato.
Bolha
Heapsort
Seleção
Inserção
Quicksort
a
8 Questão (Cód.: 27624) Pontos: 0,0 / 1,0
O almoxarifado de um órgão pediu ao técnico de informática que elaborasse um sistema de custeio que, para cada
saída de material, considerasse o custo do mais recente que houvera dado entrada no almoxarifado. O técnico deve
desenvolver um programa para tratar com uma estrutura de dados do tipo?
TABLE
FIFO
RECORD
ARRAY
LIFO
a
9 Questão (Cód.: 94162) Pontos: 0,0 / 1,0
A implementação da pilha de chamadas e retorno de funções é um tópico muito importante. Além disso, estratégias
para o gerenciamento de outra área de memória chamada de heap são importantes para a comprensão de objetos
dinâmicos como ________________. Com base na afirmativa marque a opção correta para completá-la:
REPETIÇÕES
MATRIZES
3 de 4 16/11/2012 16:17
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
ESTRUTURAS
VETORES
CONDICIONAIS
a
10 Questão (Cód.: 31182) Pontos: 0,0 / 1,0
As estruturas de dados permitem o uso de certos algoritmos para a ordenação dos elementos de forma a facilitar a
consulta de determinado elemento. Existem vários tipos de algoritmos para realizar a ordenação dos elementos,
onde um algoritmo de ordenação deve rearranjar o vetor de forma a estabelecer uma ordem entre os elementos. O
trecho de código abaixo descreve o algoritmo chamado:
MergeSort
Bolha
QuickSort
Seleção
Inserção
4 de 4 16/11/2012 16:17
Fechar
Analise as seguintes afirmações: I. Na Passagem por Referência, o parâmetro que vai ser passado na chamada
da função deve ser uma variável, de tal forma que uma alteração de valor neste parâmetro também altera a
variável correspondente. II. Uma recursão consiste em uma função chamar ela mesma com argumentos sempre
do mesmo valor. III. Considerando-se o escopo das variáveis, é correto afirmar que uma variável é dita global
quando a sua passagem no momento da chamada de uma função se dá tanto por valor quanto por referência.
Uma variável é dita local quando esta passagem se dá apenas por valor. Indique a opção que contenha todas as
afirmações verdadeiras.
I e III.
II e III.
somente a alternativa I.
somente a alternativa e II.
I e II.
As coleções de dados podem ser classificadas em estruturas lineares e estruturas não lineares. Nesse contexto,
é correto afirmar que
a lista é uma estrutura linear cuja implementação pode ser feita por meio de lista ligada em que as
estruturas são estáticas ou através de um array para permitir que as estruturas sejam ligadas
dinamicamente.
a fila de prioridade é uma versão especial da fila, uma estrutura não linear. Quando se retira um
elemento desta estrutura é selecionado aquele que tem maior prioridade, tendo portanto a ordenação do
tipo FIFO.
na tabela de Hash a chave é transformada num índice inteiro que é usado para acessar os dados. A
chave pode ser um string, desde que haja uma função que transforme essa chave num inteiro. É uma
estrutura linear.
tendo uma estrutura não linear, um array dinâmico é criado usando técnicas de alocação e gestão
dinâmica de memória. Pode ser redimensionado e é alocado durante o tempo de compilação.
na pilha, uma estrutura não linear, os elementos são colocados e retirados por um único lado da lista, ou
seja, pelo topo, que é alterado sempre que um elemento é adicionado ou retirado da pilha. É um tipo de
estrutura que tem a ordenação do tipo LILO.
3a Questão (Cód.: 31180) Pontos: 0,0 / 1,0
Existem vários algoritmos de busca em estruturas de dados, um destes realiza a busca em vetores, e requer
acesso aleatório aos elementos desta estrutura e parte do pressuposto de que os dados do vetor estejam
ordenados e utiliza a técnica de divisão e conquista comparando o elemento desejado com o elemento do meio
do vetor. Esta técnica ainda verifica se o elemento do meio do vetor for o desejado, a busca termina. Caso
contrário, se o elemento do meio vier antes do elemento buscado, então a busca continua na metade posterior
do vetor. E se o elemento do meio vier depois da chave, a busca continua na metade anterior do vetor. O
algoritmo que utiliza esta metodologia é:
Seleção
Bolha
Pesquisa sequencial
Pesquisa binária
Inserção
O que acontece ao se inserir uma informação quando já usamos toda a área disponível do vetor (topo = fim)?
inclusão
remoção
ordenação
overflow
underflow
a-c-a-b-c-a
a-b-a-c-c-b
a-a-a-b-c-b
c-a-a-b-c-b
b-b-a-c-c-c
6a Questão (Cód.: 31182) Pontos: 0,0 / 1,0
As estruturas de dados permitem o uso de certos algoritmos para a ordenação dos elementos de forma a
facilitar a consulta de determinado elemento. Existem vários tipos de algoritmos para realizar a ordenação dos
elementos, onde um algoritmo de ordenação deve rearranjar o vetor de forma a estabelecer uma ordem entre
os elementos. O trecho de código abaixo descreve o algoritmo chamado:
QuickSort
Seleção
MergeSort
Inserção
Bolha
Diferentes tipos de estrutura de dados são adequadas a diferentes tipos de aplicação e algumas são altamente
especializadas, destinando-se a algumas tarefas específicas. Dessa forma a definição de Estrutura de Dados está
expressa na alternativa:
Observe o algorítmo a seguir, onde ocorre a passagem de parâmetro por valor e por
referência, respectivamente, deITALIA para FIAT e de FRANCA para HONDA.
Ao final do processamento, as variáveis ITALIA e FRANCA terão, respectivamente, os seguintes
valores:
97 e VERDADEIRO
25 e FALSO
85 e FALSO
85 e VERDADEIRO
97 e FALSO
a
Questão (Cód.: 19663) Pontos: 0,0
Assinale a alternativa que apresenta duas formas de passagem de parâmetros para uma rotina ou função:
Nota da Prova: 3,0 de 8,0 Nota do Trabalho: Nota de Participação: 0,5 Data: 21/09/2012
a
1 Questão (Cód.: 27759) Pontos: 0,0 / 0,5
O meio para armazenar e organizar dados com o objetivo de facilitar o acesso e as modificações.
O que permite o armazenamento e a recuperação de dados independentemente de seu conteúdo.
Uma sequência de passos computacionais que transforma uma entrada em uma saída previamente
determinada.
A entrada, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
solução do problema.
A saída, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
solução do problema.
a
2 Questão (Cód.: 28095) Pontos: 1,0 / 1,0
Ao remover um elemento armazenado em uma pilha é necessário a atualização da variável (Topo) indicadora de
posição. Qual das alternativas abaixo está correta?
a
3 Questão (Cód.: 27753) Pontos: 0,5 / 0,5
É a saída, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
solução do problema.
O meio para armazenar e organizar dados com o objetivo de facilitar o acesso e as modificações.
A entrada, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
solução do problema.
O que permite o armazenamento e a recuperação de dados independentemente de seu conteúdo.
Uma sequência de passos computacionais que transforma uma entrada em uma saída previamente
determinada.
1 de 3 26/11/2012 13:12
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
a
4 Questão (Cód.: 27778) Pontos: 0,0 / 0,5
Busca, Par mais próximo, Unicidade de elementos, Distribuição de ausência, Seleção e Casco conexo.
Busca, Par mais próximo, Unicidade de elementos, Distribuição de frequência, Seleção e Casco conexo.
Busca, Par mais próximo, Unicidade de elementos, Distribuição de ausência, Seleção e Casco convexo.
Busca, Par mais endógeno, Unicidade de elementos, Distribuição de frequência, Seleção e Casco convexo.
Busca, Par mais próximo, Unicidade de elementos, Distribuição de frequência, Seleção e Casco convexo.
a
5 Questão (Cód.: 27780) Pontos: 0,5 / 0,5
a
6 Questão (Cód.: 28107) Pontos: 0,0 / 1,0
Tanto a operação TOP (acessa topo), quanto à operação POP (remover), permite acessar o último elemento
armazenado em uma Pilha. Quanto à diferença entre ambas as operações em relação ao estado da Pilha é correto
afirmar:
a
7 Questão (Cód.: 27980) Pontos: 1,0 / 1,0
Suponha uma listagem, contendo número de inscrição e pontuação (ordenada pelo número de inscrição) dos
candidatos para o cargo de Analista de Sistemas de uma grande empresa pública. São 1024 candidatos inscritos e o
sistema implementado para consulta do resultado, permite busca binária ou busca sequencial pelo número de
inscrição. O número máximo de comparações executadas se fosse utilizada a busca binária e se fosse utilizada
busca sequencial, respectivamente, seria de:
1024 e 512
9e9
512 e 1024
9 e 10
10 e 10
a
8 Questão (Cód.: 28135) Pontos: 0,0 / 1,0
2 de 3 26/11/2012 13:12
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
pode-se afirmar que se trata de uma operação de: Se topo < Maximo Então início Topo <- Topo + 1 Pilha[Topo] <-
Valor Sucesso <- verdadeiro Fim
a
9 Questão (Cód.: 30946) Pontos: 0,0 / 1,0
O registro de ativação de uma sub-rotina é o conjunto das informações que devem/precisam ser alocadas em
memória. Assinale abaixo a única opção que representa a composição destas informações.
a
10 Questão (Cód.: 94162) Pontos: 0,0 / 1,0
A implementação da pilha de chamadas e retorno de funções é um tópico muito importante. Além disso, estratégias
para o gerenciamento de outra área de memória chamada de heap são importantes para a comprensão de objetos
dinâmicos como ________________. Com base na afirmativa marque a opção correta para completá-la:
REPETIÇÕES
ESTRUTURAS
MATRIZES
VETORES
CONDICIONAIS
3 de 3 26/11/2012 13:12
Estácio http://bquestoes.estacio.br/entrada.asp?p0=143486640&p1=20110702...
Nota da Prova: 5,5 de 8,0 Nota do Trabalho: Nota de Participação: 2 Data: 19/09/2012
a
1 Questão (Cód.: 28113) Pontos: 0,5 / 0,5
As variáveis em programação são utilizadas para armazenar um valor de determinado tipo em um espaço
reservado na memória. Em algumas linguagens de programação podemos declarar, ou seja, reservar um espaço na
memória, fora do escopo da função principal, e fora do escopo de qualquer outra função. Ao fazer a declaração
desta forma estamos declarando uma variável do tipo:
Constante
Inteiro
Global
Local
Real
a
2 Questão (Cód.: 11223) Pontos: 0,0 / 1,0
As coleções de dados podem ser classificadas em estruturas lineares e estruturas não lineares. Nesse contexto, é
correto afirmar que
a lista é uma estrutura linear cuja implementação pode ser feita por meio de lista ligada em que as
estruturas são estáticas ou através de um array para permitir que as estruturas sejam ligadas
dinamicamente.
na pilha, uma estrutura não linear, os elementos são colocados e retirados por um único lado da lista, ou
seja, pelo topo, que é alterado sempre que um elemento é adicionado ou retirado da pilha. É um tipo de
estrutura que tem a ordenação do tipo LILO.
a fila de prioridade é uma versão especial da fila, uma estrutura não linear. Quando se retira um elemento
desta estrutura é selecionado aquele que tem maior prioridade, tendo portanto a ordenação do tipo FIFO.
na tabela de Hash a chave é transformada num índice inteiro que é usado para acessar os dados. A chave
pode ser um string, desde que haja uma função que transforme essa chave num inteiro. É uma estrutura
linear.
tendo uma estrutura não linear, um array dinâmico é criado usando técnicas de alocação e gestão dinâmica
de memória. Pode ser redimensionado e é alocado durante o tempo de compilação.
a
3 Questão (Cód.: 27753) Pontos: 0,5 / 0,5
A entrada, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
solução do problema.
O meio para armazenar e organizar dados com o objetivo de facilitar o acesso e as modificações.
O que permite o armazenamento e a recuperação de dados independentemente de seu conteúdo.
Uma sequência de passos computacionais que transforma uma entrada em uma saída previamente
determinada.
É a saída, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
1 de 1 16/11/2012 16:09
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
Nota da Prova: 3,5 de 8,0 Nota do Trabalho: Nota de Participação: 0,5 Data: 22/09/2012
a
1 Questão (Cód.: 27753) Pontos: 0,5 / 0,5
O meio para armazenar e organizar dados com o objetivo de facilitar o acesso e as modificações.
A entrada, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
solução do problema.
Uma sequência de passos computacionais que transforma uma entrada em uma saída previamente
determinada.
É a saída, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
solução do problema.
O que permite o armazenamento e a recuperação de dados independentemente de seu conteúdo.
a
2 Questão (Cód.: 28113) Pontos: 0,5 / 0,5
As variáveis em programação são utilizadas para armazenar um valor de determinado tipo em um espaço
reservado na memória. Em algumas linguagens de programação podemos declarar, ou seja, reservar um espaço na
memória, fora do escopo da função principal, e fora do escopo de qualquer outra função. Ao fazer a declaração
desta forma estamos declarando uma variável do tipo:
Local
Constante
Global
Inteiro
Real
a
3 Questão (Cód.: 27582) Pontos: 0,0 / 0,5
Considere:
III - A busca seqüencial executa cada fase de repetição na forma de uma subtarefa da fase anterior.
IV - A busca binária trabalha com uma forma circular de repetição. Está correto o que consta em:
1 de 4 16/11/2012 15:49
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
a
4 Questão (Cód.: 28143) Pontos: 0,5 / 0,5
Os algoritmos de busca são muito utilizados em estrutura de dados. Sendo assim, o algoritmo que realiza a busca
em vetores e que exige acesso aleatório aos elementos do mesmo e que parte do pressuposto de que o vetor está
ordenado e realiza sucessivas divisões do espaço de busca comparando o elemento que se deseja com o elemento
do meio do vetor, é chamado de:
Pesquisa binária
Tabela Hash
Pesquisa sequêncial
Pesquisa de seleção
Pesquisa ordenada
a
5 Questão (Cód.: 27773) Pontos: 0,0 / 1,0
a-b-a-c-c-b
a-a-a-b-c-b
b-b-a-c-c-c
a-c-a-b-c-a
c-a-a-b-c-b
a
6 Questão (Cód.: 19684) Pontos: 0,0 / 1,0
Analise as seguintes afirmações: I. Na Passagem por Referência, o parâmetro que vai ser passado na chamada da
função deve ser uma variável, de tal forma que uma alteração de valor neste parâmetro também altera a variável
correspondente. II. Uma recursão consiste em uma função chamar ela mesma com argumentos sempre do mesmo
valor. III. Considerando-se o escopo das variáveis, é correto afirmar que uma variável é dita global quando a sua
passagem no momento da chamada de uma função se dá tanto por valor quanto por referência. Uma variável é dita
local quando esta passagem se dá apenas por valor. Indique a opção que contenha todas as afirmações
verdadeiras.
somente a alternativa I.
II e III.
I e III.
I e II.
somente a alternativa e II.
2 de 4 16/11/2012 15:49
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
a
7 Questão (Cód.: 28135) Pontos: 0,0 / 1,0
pode-se afirmar que se trata de uma operação de: Se topo < Maximo Então início Topo <- Topo + 1 Pilha[Topo] <-
Valor Sucesso <- verdadeiro Fim
a
8 Questão (Cód.: 28034) Pontos: 1,0 / 1,0
O resultado do concurso para o cargo de uma empresa está armazenado em um vetor, que contém em cada um de
seus elementos o número de inscrição, o nome e a nota obtida pelo candidato. Este vetor está ordenado pelo
número de inscrição. Para realização de uma consulta que, dado um número de inscrição, apresenta o nome e nota
do candidato, um programador utilizou um algoritmo de busca que realiza sucessivas divisões no vetor,
comparando o número de inscrição procurado com o número de inscrição do candidato posicionado no meio do
vetor. Se o candidato posicionado do meio do vetor tiver o número de inscrição igual ao número de inscrição
procurado, a busca termina com sucesso. Caso contrário, se candidato posicionado do meio do vetor tiver número
de inscrição menor que o procurado, então a busca continua na metade posterior do vetor. E finalmente, se
candidato posicionado do meio do vetor tiver número de inscrição maior que o procurado, a busca continua na
metade anterior do vetor. O algoritmo utilizado pelo programador trata-se do método denominado busca:
randômica.
por comparação.
por contagem.
linear.
binária.
a
9 Questão (Cód.: 31184) Pontos: 0,0 / 1,0
Existem vários tipos de algoritmos para realizar a ordenação dos elementos, onde um algoritmo de ordenação deve
rearranjar o vetor de forma a estabelecer uma ordem entre os elementos. Marque a alternativa correta que cita o
algoritmo cuja descrição é: "considera cada elemento uma vez inserindo-o em seu lugar correto entre os elementos
que já estão em ordem". E o seu passo a passo pode ser descrito como: "o elemento é inserido entre os ordenados
movendo-se os elementos maiores que ele uma posição para a direita e posteriormente inserindo-o na posição
vaga".
Seleção
MergeSort
Inserção
QuickSort
3 de 4 16/11/2012 15:49
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
Bolha
a
10 Questão (Cód.: 30945) Pontos: 1,0 / 1,0
Para consultarmos uma estrutura de dados, normalmente, empregamos um tipo de pesquisa de dados. O trecho de
programa a seguir refere-se a uma pesquisa por um elemento único (sua primeira ocorrência), em um conjunto de
elementos de dados armazenado em uma estrutura de acesso indexado e aleatório. Selecione a opção
correspondente ao algoritmo utilizado, no programa, para a referida pesquisa:
return -1;
pesquisa binária
pesquisa indexada
pesquisa cadeias indexada
pesquisa de cadeias
pesquisa sequencial
4 de 4 16/11/2012 15:49
Pontos: 0,5
1a Questão (Cód.: 27759)
/ 0,5
Podemos dizer que um container é:
Pontos: 0,0
2a Questão (Cód.: 11223)
/ 1,0
As coleções de dados podem ser classificadas em estruturas lineares e estruturas não lineares. Nesse
contexto, é correto afirmar que
a lista é uma estrutura linear cuja implementação pode ser feita por meio de lista ligada em
que as estruturas são estáticas ou através de um array para permitir que as estruturas sejam
ligadas dinamicamente.
a fila de prioridade é uma versão especial da fila, uma estrutura não linear. Quando se retira
um elemento desta estrutura é selecionado aquele que tem maior prioridade, tendo portanto a
ordenação do tipo FIFO.
na pilha, uma estrutura não linear, os elementos são colocados e retirados por um único lado
da lista, ou seja, pelo topo, que é alterado sempre que um elemento é adicionado ou retirado
da pilha. É um tipo de estrutura que tem a ordenação do tipo LILO.
tendo uma estrutura não linear, um array dinâmico é criado usando técnicas de alocação e
gestão dinâmica de memória. Pode ser redimensionado e é alocado durante o tempo de
compilação.
na tabela de Hash a chave é transformada num índice inteiro que é usado para acessar os
dados. A chave pode ser um string, desde que haja uma função que transforme essa chave
num inteiro. É uma estrutura linear.
Pontos: 0,0
3a Questão (Cód.: 27971)
/ 0,5
Com relação as listas lineares sequenciais:
I - Uma lista linear sequencial é um vetor em linguagens estruturadas, também chamado de array.
II - Um elemento de uma lista linear sequencial pode ser acessado diretamente através de um índice.
III - Uma lista linear sequencial pode ter elementos de um mesmo tipo, ou de tipos diferentes.
Pontos: 0,5
4a Questão (Cód.: 27787)
/ 0,5
Marque a afirmativa correta para a "Busca ou pesquisa binária".
Pontos: 1,0
5a Questão (Cód.: 28148)
/ 1,0
A declaração de variáveis na programação é o ato de reservar um espaço na memória para poder
armazenar valores de um determinado tipo. Essas variáveis podem ser classificadas como variáveis
locais e globais. Sendo assim, qual das situações abaixo representa melhor o conceito das variáveis
globais.
Ao modificar o valor da variável 'X' na função "modifica" seu valor modificado poderá ser
apresentado em qualquer outra função do programa.
Em uma função "resul" tem-se uma variável ali declarada por 'T' que recebe o valor inteiro 5.
Ao tentar chamar esta variável em outra função é mencionado um warning.
Se dentro de uma função "mostra" declararmos uma variável 'R' com um determinado valor
poderemos imprimir esta variável em qualquer outra função do programa mostrando o valor
atribuído na função "mostra".
Se modificarmos o valor da variável 'Y' na função "soma", e depois imprimirmos na tela esta
variável em outra função, onde tambem está declarada a variável 'Y', será acusado um erro de
compilação.
Em duas funções diferentes temos duas variáveis também diferentes com o mesmo nome
apresentando o mesmo valor.
Pontos: 0,0
6a Questão (Cód.: 28126)
/ 1,0
As funções em programação permitem que se possa realizar a modularização do código diminuindo
assim sua complexidade. Analise a função abaixo e assinale alternativa que descreve corretamente o
tipo de função:
int funcao (int x){
if(x == 0)
return 0;
else
funcao(x-1);
}
Condicional de seleção
Passagem por referência
Recursiva
Sequencial
Igual a zero
Pontos: 0,0
7a Questão (Cód.: 95244)
/ 1,0
Sobre estrutura de dados, identifique o que está correto afirmar.
I. Pilha é uma estrutura de dados com acesso restrito aos seus elementos, uma vez que eles são
colocados e retirados por um único lado e são ordenados pelo princípio LIFO (last in first out).
Assim, sempre que um elemento é adicionado ou retirado seu topo é alterado.
II. Pilha é o tipo de estrutura usada, por exemplo, na avaliação de expressões numéricas, na
recursividade e pelos compiladores, na passagem de parâmetros para as funções.
III. Registro é uma estrutura básica que permite guardar coleções de dados de diferentes tipos, sendo
normalmente utilizado quando um objeto tem diferentes atributos, isto é, contém campos de
diferentes tipos.
IV. Lista pode conter um número qualquer de elementos, expandindo-se ou contraindo-se conforme
o elementos são inseridos ou retirados. Nesse tipo de estrutura, os acessos tanto podem ser feitos
sequencialmente como diretamente.
V. Fila, assim como a pilha , é uma versão especial de lista, e como tal, seus elementos são
ordenados pelo princípio LIFO (last in first out).
II, III, IV e V.
I, III e V.
I, III, IV e V.
II, IV e V.
I, II e III.
Pontos: 0,5
8a Questão (Cód.: 27753)
/ 0,5
Podemos dizer que estrutura de dados é:
É a saída, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se
calcular uma solução do problema.
A entrada, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se
calcular uma solução do problema.
Uma sequência de passos computacionais que transforma uma entrada em uma saída
previamente determinada.
O que permite o armazenamento e a recuperação de dados independentemente de seu
conteúdo.
O meio para armazenar e organizar dados com o objetivo de facilitar o acesso e as
modificações.
Pontos: 0,0
9a Questão (Cód.: 31184)
/ 1,0
Existem vários tipos de algoritmos para realizar a ordenação dos elementos, onde um algoritmo de
ordenação deve rearranjar o vetor de forma a estabelecer uma ordem entre os elementos. Marque a
alternativa correta que cita o algoritmo cuja descrição é: "considera cada elemento uma vez
inserindo-o em seu lugar correto entre os elementos que já estão em ordem". E o seu passo a passo
pode ser descrito como: "o elemento é inserido entre os ordenados movendo-se os elementos
maiores que ele uma posição para a direita e posteriormente inserindo-o na posição vaga".
Seleção
Inserção
QuickSort
MergeSort
Bolha
Pontos: 0,0
10a Questão (Cód.: 30945)
/ 1,0
Para consultarmos uma estrutura de dados, normalmente, empregamos um tipo de pesquisa de
dados. O trecho de programa a seguir refere-se a uma pesquisa por um elemento único (sua primeira
ocorrência), em um conjunto de elementos de dados armazenado em uma estrutura de acesso
indexado e aleatório. Selecione a opção correspondente ao algoritmo utilizado, no programa, para a
referida pesquisa:
return -1;
pesquisa de cadeias
pesquisa sequencial
pesquisa binária
pesquisa cadeias indexada
pesquisa indexada
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
Nota da Prova: 6,0 de 8,0 Nota do Trabalho: Nota de Participação: 0,5 Data: 21/09/2012
a
1 Questão (Cód.: 27759) Pontos: 0,5 / 0,5
a
2 Questão (Cód.: 27978) Pontos: 0,0 / 0,5
O método de ordenação que compara pares de chaves de ordenação, trocando os elementos correspondentes caso
estejam fora de ordem é o método:
Heapsort
inserção
seleção
bolha
QuickSort
a
3 Questão (Cód.: 27971) Pontos: 0,0 / 0,5
I - Uma lista linear sequencial é um vetor em linguagens estruturadas, também chamado de array.
II - Um elemento de uma lista linear sequencial pode ser acessado diretamente através de um índice.
III - Uma lista linear sequencial pode ter elementos de um mesmo tipo, ou de tipos diferentes.
1 de 4 16/11/2012 16:26
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
a
4 Questão (Cód.: 27787) Pontos: 0,5 / 0,5
Consiste em adicionar um valor no vetor, mantendo a ordem existente e ajustando o total de elementos.
Consiste em adicionar um valor no vetor, alterando a ordem existente e ajustando o total de elementos.
É o processo pelo qual um conjunto de dados é colocado em uma ordem crescente ou decrescente.
Consiste em fazer uma busca em um vetor desordenado, dividindo o espaço de busca ao meio e verificando
se o dado está no meio ou, antes do meio ou depois do meio.
Consiste em fazer uma busca em um vetor já ordenado, dividindo o espaço de busca ao meio e verificando
se o dado está no meio ou, antes do meio ou depois do meio.
a
5 Questão (Cód.: 28126) Pontos: 0,0 / 1,0
As funções em programação permitem que se possa realizar a modularização do código diminuindo assim sua
complexidade. Analise a função abaixo e assinale alternativa que descreve corretamente o tipo de função:
int funcao (int x){
if(x == 0)
return 0;
else
funcao(x-1);
}
Igual a zero
Recursiva
Sequencial
Condicional de seleção
Passagem por referência
a
6 Questão (Cód.: 27980) Pontos: 1,0 / 1,0
Suponha uma listagem, contendo número de inscrição e pontuação (ordenada pelo número de inscrição) dos
candidatos para o cargo de Analista de Sistemas de uma grande empresa pública. São 1024 candidatos inscritos e o
sistema implementado para consulta do resultado, permite busca binária ou busca sequencial pelo número de
inscrição. O número máximo de comparações executadas se fosse utilizada a busca binária e se fosse utilizada
busca sequencial, respectivamente, seria de:
9 e 10
1024 e 512
512 e 1024
10 e 10
9e9
a
7 Questão (Cód.: 28035) Pontos: 1,0 / 1,0
O resultado do concurso para o cargo de uma empresa está armazenado em um vetor, que contém em cada um de seus
elementos o nome e a nota obtida pelo candidato. Deseja-se que este vetor seja ordenado pela nota, em ordem decrescente.
Sendo o vetor pequeno (poucos elementos), o programador responsável por desenvolver este algoritmo, escolheu um
método de ordenação que executa os seguintes passos:
Selecione candidato com maior nota entre todos e troque-o com o candidato que está na primeira posição do vetor;
Selecione o segundo maior e troque-o com o candidato que está na segunda posição;
2 de 4 16/11/2012 16:26
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
Os passos descritos anteriormente são seguidos para a terceira nota, quarta nota e assim por diante até que reste
apenas um candidato.
Heapsort
Quicksort
Seleção
Bolha
Inserção
a
8 Questão (Cód.: 31184) Pontos: 1,0 / 1,0
Existem vários tipos de algoritmos para realizar a ordenação dos elementos, onde um algoritmo de ordenação deve
rearranjar o vetor de forma a estabelecer uma ordem entre os elementos. Marque a alternativa correta que cita o
algoritmo cuja descrição é: "considera cada elemento uma vez inserindo-o em seu lugar correto entre os elementos
que já estão em ordem". E o seu passo a passo pode ser descrito como: "o elemento é inserido entre os ordenados
movendo-se os elementos maiores que ele uma posição para a direita e posteriormente inserindo-o na posição
vaga".
MergeSort
Seleção
QuickSort
Bolha
Inserção
a
9 Questão (Cód.: 28148) Pontos: 1,0 / 1,0
A declaração de variáveis na programação é o ato de reservar um espaço na memória para poder armazenar
valores de um determinado tipo. Essas variáveis podem ser classificadas como variáveis locais e globais. Sendo
assim, qual das situações abaixo representa melhor o conceito das variáveis globais.
Ao modificar o valor da variável 'X' na função "modifica" seu valor modificado poderá ser apresentado em
qualquer outra função do programa.
Em duas funções diferentes temos duas variáveis também diferentes com o mesmo nome apresentando o
mesmo valor.
Em uma função "resul" tem-se uma variável ali declarada por 'T' que recebe o valor inteiro 5. Ao tentar
chamar esta variável em outra função é mencionado um warning.
Se dentro de uma função "mostra" declararmos uma variável 'R' com um determinado valor poderemos
imprimir esta variável em qualquer outra função do programa mostrando o valor atribuído na função
"mostra".
Se modificarmos o valor da variável 'Y' na função "soma", e depois imprimirmos na tela esta variável em
outra função, onde tambem está declarada a variável 'Y', será acusado um erro de compilação.
a
10 Questão (Cód.: 30945) Pontos: 1,0 / 1,0
Para consultarmos uma estrutura de dados, normalmente, empregamos um tipo de pesquisa de dados. O trecho de
programa a seguir refere-se a uma pesquisa por um elemento único (sua primeira ocorrência), em um conjunto de
elementos de dados armazenado em uma estrutura de acesso indexado e aleatório. Selecione a opção
correspondente ao algoritmo utilizado, no programa, para a referida pesquisa:
3 de 4 16/11/2012 16:26
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
return -1;
pesquisa de cadeias
pesquisa binária
pesquisa cadeias indexada
pesquisa indexada
pesquisa sequencial
4 de 4 16/11/2012 16:26
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
Nota da Prova: 3,0 de 8,0 Nota do Trabalho: Nota de Participação: 2 Data: 20/09/2012
a
1 Questão (Cód.: 27978) Pontos: 0,5 / 0,5
O método de ordenação que compara pares de chaves de ordenação, trocando os elementos correspondentes caso
estejam fora de ordem é o método:
seleção
bolha
QuickSort
inserção
Heapsort
a
2 Questão (Cód.: 27760) Pontos: 0,0 / 0,5
a
3 Questão (Cód.: 27582) Pontos: 0,0 / 0,5
Considere:
III - A busca seqüencial executa cada fase de repetição na forma de uma subtarefa da fase anterior.
IV - A busca binária trabalha com uma forma circular de repetição. Está correto o que consta em:
(A) I, apenas.
(C) I e II, apenas.
(E) I e IV, apenas.
(B) II, apenas.
(D) I, II, III e IV.
1 de 4 29/10/2012 09:14
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
a
4 Questão (Cód.: 28143) Pontos: 0,5 / 0,5
Os algoritmos de busca são muito utilizados em estrutura de dados. Sendo assim, o algoritmo que realiza a busca
em vetores e que exige acesso aleatório aos elementos do mesmo e que parte do pressuposto de que o vetor está
ordenado e realiza sucessivas divisões do espaço de busca comparando o elemento que se deseja com o elemento
do meio do vetor, é chamado de:
Pesquisa sequêncial
Pesquisa binária
Pesquisa de seleção
Tabela Hash
Pesquisa ordenada
a
5 Questão (Cód.: 27773) Pontos: 1,0 / 1,0
c-a-a-b-c-b
a-c-a-b-c-a
a-b-a-c-c-b
a-a-a-b-c-b
b-b-a-c-c-c
a
6 Questão (Cód.: 28034) Pontos: 1,0 / 1,0
O resultado do concurso para o cargo de uma empresa está armazenado em um vetor, que contém em cada um de
seus elementos o número de inscrição, o nome e a nota obtida pelo candidato. Este vetor está ordenado pelo
número de inscrição. Para realização de uma consulta que, dado um número de inscrição, apresenta o nome e nota
do candidato, um programador utilizou um algoritmo de busca que realiza sucessivas divisões no vetor,
comparando o número de inscrição procurado com o número de inscrição do candidato posicionado no meio do
vetor. Se o candidato posicionado do meio do vetor tiver o número de inscrição igual ao número de inscrição
procurado, a busca termina com sucesso. Caso contrário, se candidato posicionado do meio do vetor tiver número
de inscrição menor que o procurado, então a busca continua na metade posterior do vetor. E finalmente, se
candidato posicionado do meio do vetor tiver número de inscrição maior que o procurado, a busca continua na
metade anterior do vetor. O algoritmo utilizado pelo programador trata-se do método denominado busca:
linear.
randômica.
binária.
por comparação.
por contagem.
2 de 4 29/10/2012 09:14
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
a
7 Questão (Cód.: 19684) Pontos: 0,0 / 1,0
Analise as seguintes afirmações: I. Na Passagem por Referência, o parâmetro que vai ser passado na chamada da
função deve ser uma variável, de tal forma que uma alteração de valor neste parâmetro também altera a variável
correspondente. II. Uma recursão consiste em uma função chamar ela mesma com argumentos sempre do mesmo
valor. III. Considerando-se o escopo das variáveis, é correto afirmar que uma variável é dita global quando a sua
passagem no momento da chamada de uma função se dá tanto por valor quanto por referência. Uma variável é dita
local quando esta passagem se dá apenas por valor. Indique a opção que contenha todas as afirmações
verdadeiras.
a
8 Questão (Cód.: 28128) Pontos: 0,0 / 1,0
Os métodos de ordenação são muito utilizados em estruturas de dados para facilitar a busca e a recuperação
posterior de itens de conjuntos ordenados. Existem vários métodos de ordenação, por este motivo, marque
corretamente a alternativa que apresenta o código do método de seleção.
3 de 4 29/10/2012 09:14
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
if (v[meio] == valor)
return meio;
if (valor < v[meio])
fim = meio -1;
else
ini = meio+1;
}
return -1;
}
a
9 Questão (Cód.: 94162) Pontos: 0,0 / 1,0
A implementação da pilha de chamadas e retorno de funções é um tópico muito importante. Além disso, estratégias
para o gerenciamento de outra área de memória chamada de heap são importantes para a comprensão de objetos
dinâmicos como ________________. Com base na afirmativa marque a opção correta para completá-la:
MATRIZES
REPETIÇÕES
CONDICIONAIS
VETORES
ESTRUTURAS
a
10 Questão (Cód.: 31182) Pontos: 0,0 / 1,0
As estruturas de dados permitem o uso de certos algoritmos para a ordenação dos elementos de forma a facilitar a
consulta de determinado elemento. Existem vários tipos de algoritmos para realizar a ordenação dos elementos,
onde um algoritmo de ordenação deve rearranjar o vetor de forma a estabelecer uma ordem entre os elementos. O
trecho de código abaixo descreve o algoritmo chamado:
MergeSort
Inserção
Seleção
Bolha
QuickSort
4 de 4 29/10/2012 09:14
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
Nota da Prova: 0,5 de 8,0 Nota do Trabalho: Nota de Participação: 2 Data: 17/09/2012
As variáveis em programação são utilizadas para armazenar um valor de determinado tipo em um espaço
reservado na memória. Em algumas linguagens de programação podemos declarar, ou seja, reservar um
espaço na memória, fora do escopo da função principal, e fora do escopo de qualquer outra função. Ao fazer a
declaração desta forma estamos declarando uma variável do tipo:
Global
Real
Local
Constante
Inteiro
As estruturas de dados em programação são muito utilizadas para tornar o acesso aos dados mais eficiente e
organizado. A estrutura de dados considerada mais simples e tem como característica apresentar apenas uma
dimensão é:
Função
Matriz
Registro
Vetor
Variável
Considere:
III - A busca seqüencial executa cada fase de repetição na forma de uma subtarefa da fase anterior.
IV - A busca binária trabalha com uma forma circular de repetição. Está correto o que consta em:
1 de 5 12/11/2012 09:18
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
Considere uma estrutura de dados do tipo vetor. Com respeito a tal estrutura, é correto que seus componentes
são caracteristicamente:
int i , // índice
trocou = true,
fim = n - 1;
while (trocou)
aux = v[i];
v[i] = v[i+1];
v[i+1] = aux;
trocou = true;
} // fim if
} // fim for
} // fim while
} // fim da função
Bublesort
Shellsort
Mergesort
Heapsort
Quicksort
2 de 5 12/11/2012 09:18
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
Com a utilização das estruturas de dados e seus tipos, em algumas situações é imprescindível a criação de
funções que façam determinada verificação ou ação nestas estruturas. Dessa forma, analise a função abaixo e
marque corretamente a alternativa que descreve as funcionalidades desta.
I. Pilha é uma estrutura de dados com acesso restrito aos seus elementos, uma vez que eles são colocados e
retirados por um único lado e são ordenados pelo princípio LIFO (last in first out). Assim, sempre que um
elemento é adicionado ou retirado seu topo é alterado.
II. Pilha é o tipo de estrutura usada, por exemplo, na avaliação de expressões numéricas, na recursividade e
pelos compiladores, na passagem de parâmetros para as funções.
III. Registro é uma estrutura básica que permite guardar coleções de dados de diferentes tipos, sendo
normalmente utilizado quando um objeto tem diferentes atributos, isto é, contém campos de diferentes tipos.
IV. Lista pode conter um número qualquer de elementos, expandindo-se ou contraindo-se conforme o
elementos são inseridos ou retirados. Nesse tipo de estrutura, os acessos tanto podem ser feitos
sequencialmente como diretamente.
V. Fila, assim como a pilha , é uma versão especial de lista, e como tal, seus elementos são ordenados pelo
princípio LIFO (last in first out).
II, IV e V.
I, II e III.
II, III, IV e V.
I, III, IV e V.
I, III e V.
Existem vários algoritmos de busca em estruturas de dados, um destes realiza a busca em vetores, e requer
acesso aleatório aos elementos desta estrutura e parte do pressuposto de que os dados do vetor estejam
ordenados e utiliza a técnica de divisão e conquista comparando o elemento desejado com o elemento do meio
do vetor. Esta técnica ainda verifica se o elemento do meio do vetor for o desejado, a busca termina. Caso
contrário, se o elemento do meio vier antes do elemento buscado, então a busca continua na metade posterior
do vetor. E se o elemento do meio vier depois da chave, a busca continua na metade anterior do vetor. O
algoritmo que utiliza esta metodologia é:
Inserção
Seleção
Pesquisa binária
Bolha
Pesquisa sequencial
3 de 5 12/11/2012 09:18
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
Os métodos de ordenação são muito utilizados em estruturas de dados para facilitar a busca e a recuperação
posterior de itens de conjuntos ordenados. Existem vários métodos de ordenação, por este motivo, marque
corretamente a alternativa que apresenta o código do método de seleção.
As estruturas de dados permitem o uso de certos algoritmos para a ordenação dos elementos de forma a
facilitar a consulta de determinado elemento. Existem vários tipos de algoritmos para realizar a ordenação dos
elementos, onde um algoritmo de ordenação deve rearranjar o vetor de forma a estabelecer uma ordem entre
os elementos. O trecho de código abaixo descreve o algoritmo chamado:
4 de 5 12/11/2012 09:18
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
mínimo = i
para j da posição seguinte a i até a ultima posição faça
se (a[j] < a[mínimo])
mínimo =j;
fim para
fim para
troca(a[mínimo],a[i]);
fim algoritmo
Inserção
MergeSort
Seleção
QuickSort
Bolha
5 de 5 12/11/2012 09:18
Detalhes Fechar
Avaliação: CCT0260_2012/02_AV1_201201174082
Tipo de Avaliação: AV1
Aluno:
Professor: SERGIO DE OLIVEIRA SANTOS Turma: 9001/AA
Nota da Prova: 5,0 de 8,0 Nota do Trabalho: Nota de Participação: 2 Data: 21/09/2012
Consiste em fazer uma busca em um vetor desordenado, dividindo o espaço de busca ao meio
e verificando se o dado está no meio ou, antes do meio ou depois do meio.
É o processo pelo qual um conjunto de dados é colocado em uma ordem crescente ou
decrescente.
Consiste em adicionar um valor no vetor, mantendo a ordem existente e ajustando o total de
elementos.
Consiste em fazer uma busca em um vetor já ordenado, dividindo o espaço de busca ao meio e
verificando se o dado está no meio ou, antes do meio ou depois do meio.
Consiste em adicionar um valor no vetor, alterando a ordem existente e ajustando o total de
elementos.
A ordenação é a base na qual, muitos sistemas são construídos. Entendendo a ordenação, tem-
se conhecimento para resolver outros problemas.
A ordenação é a base na qual, muitos sistemas são construídos. Entendendo a ordenação, tem-
se conhecimento para manter outros problemas.
A ordenação é a base na qual, muitos algoritmos são construídos. Entendendo a ordenação,
tem-se conhecimento para manter outros problemas.
A ordenação é a base na qual, muitos algoritmos são construídos. Entendendo a ordenação,
tem-se conhecimento para resolver outros problemas.
A ordenação é a base na qual, muitos programas são construídos. Entendendo a ordenação,
tem-se conhecimento para manter outros problemas.
ARRAY
LIFO
FIFO
RECORD
TABLE
I. Pilha é uma estrutura de dados com acesso restrito aos seus elementos, uma vez que eles são
colocados e retirados por um único lado e são ordenados pelo princípio LIFO (last in first out).
Assim, sempre que um elemento é adicionado ou retirado seu topo é alterado.
II. Pilha é o tipo de estrutura usada, por exemplo, na avaliação de expressões numéricas, na
recursividade e pelos compiladores, na passagem de parâmetros para as funções.
III. Registro é uma estrutura básica que permite guardar coleções de dados de diferentes tipos, sendo
normalmente utilizado quando um objeto tem diferentes atributos, isto é, contém campos de
diferentes tipos.
IV. Lista pode conter um número qualquer de elementos, expandindo-se ou contraindo-se conforme
o elementos são inseridos ou retirados. Nesse tipo de estrutura, os acessos tanto podem ser feitos
sequencialmente como diretamente.
V. Fila, assim como a pilha , é uma versão especial de lista, e como tal, seus elementos são
ordenados pelo princípio LIFO (last in first out).
I, III e V.
II, IV e V.
I, III, IV e V.
II, III, IV e V.
I, II e III.
Bolha
Inserção
Pesquisa sequencial
Pesquisa binária
Seleção
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
Nota da Prova: 4,0 de 8,0 Nota do Trabalho: Nota de Participação: 2 Data: 21/11/2012
a
1 Questão (Cód.: 58564) Pontos: 1,5 / 1,5
Resposta: ESTRUTURA LINEAR ONDE A INCLUSÃO É FEITA EM UMA ESTREMIDADE E A EXCLUSÃO EM OUTRA.
a
2 Questão (Cód.: 56270) Pontos: 0,0 / 1,5
Resposta:
a
3 Questão (Cód.: 27578) Pontos: 0,0 / 0,5
Diga, para o programa abaixo, qual a opção que melhor representa a saída em tela. (Considere que o programa
será compilado sem erros, e irá executar também sem problemas).
#include
int tmp;
tmp = *y;
*y = x * 2;
1 de 4 26/11/2012 11:55
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
int main()
system("pause");
Valores: 10, 20
Valores: 13, 20
Valores: 10, 10
Valores: 20, 10
Valores: 13, 10
a
4 Questão (Cód.: 27935) Pontos: 0,5 / 0,5
Sobre o funcionamento da busca binária, é incorreto afirmar que dividindo seu vetor em duas metades.
Se o item for menor ao item que está na primeira posição do vetor, o item não foi encontrado.
Se o item for menor que o item que está na metade do vetor, procure na primeira metade, ou seja, a da
esquerda.
Se o item for maior que o item que está na metade do vetor procure na segunda metade, ou seja, a da
direita.
Se o item for igual ao item que está na metade do vetor, o item foi encontrado.
Se o item for igual ao item que está na metade do vetor, o item não foi encontrado.
a
5 Questão (Cód.: 19678) Pontos: 1,0 / 1,0
Uma lista ligada é uma estrutura que corresponde a uma sequência lógica de entradas ou nós. Cada nó armazena a
localização do próximo elemento na sequência, ou seja, de seu nó sucessor. Nessa estrutura,
para estabelecer a ligação entre um nó já pertencente a uma lista e um novo nó, basta fazer com que o
novo nó referencie no, campo next, o nó que anteriormente era referenciado pelo nó original, desde que
esse campo não tenha o valor nulo.
o armazenamento de uma lista requer uma área contígua de memória para permitir a otimização no
processamento de criação e remoção de nós da lista.
enquanto a entrada que determina o topo da lista é mantida em um nó descritor dessa lista, a entrada que
marca o fim da lista é mantida fora do descritor.
o armazenamento de uma lista não requer uma área contígua de memória. Como listas são estruturas
dinâmicas, normalmente são definidos procedimentos que permitem criar e remover nós na memória.
a existência de um ponteiro apontando para o 1º elemento e outro para o fim da lista permite que a
inserção ou deleção de dados de um nó que esteja no meio da lista seja rapidamente executada.
a
6 Questão (Cód.: 95248) Pontos: 0,0 / 0,5
Uma fila duplamente terminada, isto é, uma estrutura linear que permite inserir e remover de ambos os extremos é
chamada de:
2 de 4 26/11/2012 11:55
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
Deque.
Boyer-Moore.
Autômato.
Árvore.
Shift-and.
a
7 Questão (Cód.: 28144) Pontos: 0,0 / 0,5
Com a utilização das estruturas de dados e seus tipos, em algumas situações é imprescindível a criação de funções
que façam determinada verificação ou ação nestas estruturas. Dessa forma, analise a função abaixo e marque
corretamente a alternativa que descreve as funcionalidades desta.
a
8 Questão (Cód.: 19663) Pontos: 1,0 / 1,0
Assinale a alternativa que apresenta duas formas de passagem de parâmetros para uma rotina ou função:
a
9 Questão (Cód.: 27988) Pontos: 0,0 / 0,5
Considerando a estrutura de fila circular vista em sala, que define as seguintes operações com uma fila:
int enfileirar(int v[], int valor, int *fim) - insere um elemento na fila indicada por v.
int desenfileirar(int v[], int *inicio, int fim, float &valor) - remove um elemento da fila indicada por v.
Supondo que foram realizadas as seguintes operações numa fila circular (implementada em uma estrutura linear
sequencial) de números inteiros de tamanho 5, que inicialmente se encontrava vazia:
3 de 4 26/11/2012 11:55
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
Qual a posição, dentro da estrutura linear sequencial (vetor - que representa a fila), que se encontra o último
elemento inserido na fila?
4
7
6
5
1
a
10 Questão (Cód.: 28102) Pontos: 0,0 / 0,5
4 de 4 26/11/2012 11:55
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
a
1 Questão (Cód.: 58564) Pontos: 0,0 / 1,5
a
2 Questão (Cód.: 27759) Pontos: 0,0 / 1,0
A entrada, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
solução do problema.
O que permite o armazenamento e a recuperação de dados independentemente de seu conteúdo.
A saída, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
solução do problema.
O meio para armazenar e organizar dados com o objetivo de facilitar o acesso e as modificações.
Uma sequência de passos computacionais que transforma uma entrada em uma saída previamente
determinada.
a
3 Questão (Cód.: 19673) Pontos: 0,0 / 1,0
Uma fila dupla que se trata de uma lista linear na qual os elementos podem ser inseridos ou removidos de qualquer
extremo denomina-se:
lista fechada
hashing
lista aberta
grafo
deque
a
4 Questão (Cód.: 27578) Pontos: 0,0 / 0,5
Diga, para o programa abaixo, qual a opção que melhor representa a saída em tela. (Considere que o programa
será compilado sem erros, e irá executar também sem problemas).
#include
1 de 4 16/11/2012 16:04
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
int tmp;
tmp = *y;
*y = x * 2;
x = tmp+1;
int main()
system("pause");
Valores: 20, 10
Valores: 13, 20
Valores: 13, 10
Valores: 10, 20
Valores: 10, 10
a
5 Questão (Cód.: 56276) Pontos: 0,0 / 1,5
Resposta:
a
6 Questão (Cód.: 28136) Pontos: 0,5 / 0,5
Analisando a figura abaixo, marque a alternativa correta que apresenta o tipo de estrutura de dados utilizado.
2 de 4 16/11/2012 16:04
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
Pilha
Struct
Fila
Matriz
Hash
a
7 Questão (Cód.: 27775) Pontos: 0,0 / 0,5
A ordenação é a base na qual, muitos programas são construídos. Entendendo a ordenação, tem-se
conhecimento para manter outros problemas.
A ordenação é a base na qual, muitos sistemas são construídos. Entendendo a ordenação, tem-se
conhecimento para resolver outros problemas.
A ordenação é a base na qual, muitos sistemas são construídos. Entendendo a ordenação, tem-se
conhecimento para manter outros problemas.
A ordenação é a base na qual, muitos algoritmos são construídos. Entendendo a ordenação, tem-se
conhecimento para manter outros problemas.
A ordenação é a base na qual, muitos algoritmos são construídos. Entendendo a ordenação, tem-se
conhecimento para resolver outros problemas.
a
8 Questão (Cód.: 28131) Pontos: 0,5 / 0,5
O espaço necessário para a representação dos dados pode ser alocado à medida que se torne necessário, através
da alocação dinâmica. Uma estrutura armazenada através de encadeamento apresenta seus nodos alocados em
posições aleatórias na memória, e não lado a lado. Dessa forma, existem várias vantagens no uso de representar
os dados por encadeamento. Marque a alternativa correta que apresenta estas vantagens.
a
9 Questão (Cód.: 28148) Pontos: 0,5 / 0,5
A declaração de variáveis na programação é o ato de reservar um espaço na memória para poder armazenar
valores de um determinado tipo. Essas variáveis podem ser classificadas como variáveis locais e globais. Sendo
assim, qual das situações abaixo representa melhor o conceito das variáveis globais.
Em duas funções diferentes temos duas variáveis também diferentes com o mesmo nome apresentando o
mesmo valor.
Se modificarmos o valor da variável 'Y' na função "soma", e depois imprimirmos na tela esta variável em
outra função, onde tambem está declarada a variável 'Y', será acusado um erro de compilação.
Se dentro de uma função "mostra" declararmos uma variável 'R' com um determinado valor poderemos
imprimir esta variável em qualquer outra função do programa mostrando o valor atribuído na função
"mostra".
3 de 4 16/11/2012 16:04
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
"mostra".
Ao modificar o valor da variável 'X' na função "modifica" seu valor modificado poderá ser apresentado em
qualquer outra função do programa.
Em uma função "resul" tem-se uma variável ali declarada por 'T' que recebe o valor inteiro 5. Ao tentar
chamar esta variável em outra função é mencionado um warning.
a
10 Questão (Cód.: 28104) Pontos: 0,5 / 0,5
Para a criação de uma Fila seqüencial basta iniciar as variáveis de início e final, ou seja, apontá-las para as posições
iniciais do vetor. O que alteraria na rotina de inserir se a variável final fosse inicializada com o valor -1 (menos
um):
4 de 4 16/11/2012 16:04
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
Nota da Prova: 7,5 de 8,0 Nota do Trabalho: Nota de Participação: 2 Data: 14/11/2012
a
1 Questão (Cód.: 58562) Pontos: 1,5 / 1,5
Resposta: A pilha e a fila são dois casos especiais de lista. Na pilha, é usado o método LIFO, último a entrar
primeiro a sair, indicado em casos como o control Z, os dados são sempre inseridos e removidos do topo. Já na
Fila, o método é o FIFO, primeiro a entrar primeiro a sair, é a ideia de uma fila de atendimento, onde as pessoas
são atendidas por ordem de chegada.
a
2 Questão (Cód.: 51756) Pontos: 1,0 / 1,0
Com base nos principais elementos fornecidos pela biblioteca C++ padrão, marque a opção correta que resume
todos os elementos dessa biblioteca:
a
3 Questão (Cód.: 19681) Pontos: 0,5 / 0,5
Um órgão público adotou dois sistemas de senhas para atender os cidadãos na ordem de chegada. O sistema I
atende os não idosos. O sistema II atende os idosos. Nessa situação:
a
4 Questão (Cód.: 27775) Pontos: 0,5 / 0,5
A ordenação é a base na qual, muitos sistemas são construídos. Entendendo a ordenação, tem-se
conhecimento para manter outros problemas.
1 de 4 16/11/2012 16:10
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
A ordenação é a base na qual, muitos algoritmos são construídos. Entendendo a ordenação, tem-se
conhecimento para resolver outros problemas.
A ordenação é a base na qual, muitos sistemas são construídos. Entendendo a ordenação, tem-se
conhecimento para resolver outros problemas.
A ordenação é a base na qual, muitos programas são construídos. Entendendo a ordenação, tem-se
conhecimento para manter outros problemas.
A ordenação é a base na qual, muitos algoritmos são construídos. Entendendo a ordenação, tem-se
conhecimento para manter outros problemas.
a
5 Questão (Cód.: 56270) Pontos: 1,5 / 1,5
Resposta: no * inverter (no *ini){ int achou=0; do{ if(no->link == null){ return no; }else{ no=no->link }
while(achou=0) } }
a
6 Questão (Cód.: 27996) Pontos: 0,0 / 0,5
int main() {
int *ptr;
ptr = vet;
return 0;
80 50
80 10
70 73
80 83
70 10
2 de 4 16/11/2012 16:10
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
a
7 Questão (Cód.: 28126) Pontos: 0,5 / 0,5
As funções em programação permitem que se possa realizar a modularização do código diminuindo assim sua
complexidade. Analise a função abaixo e assinale alternativa que descreve corretamente o tipo de função:
int funcao (int x){
if(x == 0)
return 0;
else
funcao(x-1);
}
a
8 Questão (Cód.: 27753) Pontos: 1,0 / 1,0
Uma sequência de passos computacionais que transforma uma entrada em uma saída previamente
determinada.
A entrada, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
solução do problema.
É a saída, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
solução do problema.
O que permite o armazenamento e a recuperação de dados independentemente de seu conteúdo.
O meio para armazenar e organizar dados com o objetivo de facilitar o acesso e as modificações.
a
9 Questão (Cód.: 27988) Pontos: 0,5 / 0,5
Considerando a estrutura de fila circular vista em sala, que define as seguintes operações com uma fila:
int enfileirar(int v[], int valor, int *fim) - insere um elemento na fila indicada por v.
int desenfileirar(int v[], int *inicio, int fim, float &valor) - remove um elemento da fila indicada por v.
Supondo que foram realizadas as seguintes operações numa fila circular (implementada em uma estrutura linear
sequencial) de números inteiros de tamanho 5, que inicialmente se encontrava vazia:
Qual a posição, dentro da estrutura linear sequencial (vetor - que representa a fila), que se encontra o último
elemento inserido na fila?
3 de 4 16/11/2012 16:10
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
7
4
1
5
6
a
10 Questão (Cód.: 27963) Pontos: 0,5 / 0,5
O resultado de um concurso foi armazenado por um programador em um vetor, onde cada elemento (descrito pela
struct Candidato) possui a informação da matrícula e nota de cada candidato, conforme descrito a seguir.
Deseja-se que o vetor com os resultados fique ordenado em ordem decrescente pela nota. O programador pretende
usar o algoritmo de busca descrito a seguir, porém precisa de ajuda no trecho contendo ********.
Indique a opção que contém a solução que completa as linhas 1, 3 e 7 do algoritmo.
...
struct Candidato {
char mat[10];
float nota;
};
...
4 de 4 16/11/2012 16:10
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
Nota da Prova: 4,0 de 8,0 Nota do Trabalho: Nota de Participação: Data: 16/11/2012
a
1 Questão (Cód.: 58564) Pontos: / 1,5
Resposta: Se trata de uma estrutura firs in, firs out (primeiro a entrar será o primeiro a sair), inclusive no fórum
usei uma implementação de uma fila de táxi em um aeroporto. Essa estrutura é igual ao nosso dia a dia mesmo em
uma fila, ou seja, o primeiro que chega é o primeiro a ser atendido portanto o primeiro a sair.
a
2 Questão (Cód.: 56276) Pontos: / 1,5
a
3 Questão (Cód.: 27760) Pontos: 1,0 / 1,0
1 de 4 16/11/2012 15:23
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
a
4 Questão (Cód.: 27619) Pontos: 1,0 / 1,0
Em relação as estruturas de dados, aquela que corresponde ao armazenamento em uma lista linear com a posição
relativa (não contígua) na memória de dois nós consecutivos da lista é conhecida por alocação:
Estática.
Combinada.
Seqüencial.
Encadeada.
Binária.
a
5 Questão (Cód.: 19681) Pontos: 0,5 / 0,5
Um órgão público adotou dois sistemas de senhas para atender os cidadãos na ordem de chegada. O sistema I
atende os não idosos. O sistema II atende os idosos. Nessa situação:
a
6 Questão (Cód.: 77785) Pontos: 0,5 / 0,5
É um método de pesquisa ou busca, cujo algoritmo parte do pressuposto de que o vetor está
ordenado e realiza sucessivas divisões do espaço de busca, comparando o elemento buscado (chave)
com o elemento no meio do vetor. Se o elemento do meio do vetor for a chave, a busca termina com
sucesso. Caso contrário, se o elemento do meio vier antes do elemento buscado, então a busca
continua na metade posterior do vetor. E finalmente, se o elemento do meio vier depois da chave, a
busca continua na metade anterior do vetor.
por comparação.
binária.
linear.
randômica.
por contagem.
a
7 Questão (Cód.: 28104) Pontos: 0,5 / 0,5
Para a criação de uma Fila seqüencial basta iniciar as variáveis de início e final, ou seja, apontá-las para as posições
iniciais do vetor. O que alteraria na rotina de inserir se a variável final fosse inicializada com o valor -1 (menos
um):
2 de 4 16/11/2012 15:23
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
a
8 Questão (Cód.: 27620) Pontos: 0,5 / 0,5
Seja Q uma estrutura de dados do tipo fila, em que ENQUEUE(X) significa a adição do elemento X à Q e que
DEQUEUE(), a retirada de um elemento. Q está inicialmente vazia e sofre a seguinte sequencia de operações:
ENQUEUE(1)
ENQUEUE(2)
DEQUEUE()
ENQUEUE(3)
ENQUEUE(4)
DEQUEUE()
DEQUEUE()
ENQUEUE(5)
5
0
6
15
9
a
9 Questão (Cód.: 28147) Pontos: 0,0 / 0,5
Em programação podemos utilizar um recurso que modulariza o programa chamado função. As funções precisam
ser ativadas para que possam ser executadas. Para isso, é necessário chamar a função pelo seu nome e enviar,
quando necessário, os valores respectivos para os parâmetros de entrada. Ao enviar os valores para os parâmetros
de entrada, o programa pode fazer uma cópia deste valor ou trabalhar em um endereço enviado. Quando se envia
o endereço estamos ativando a função por meio de:
a
10 Questão (Cód.: 28102) Pontos: 0,0 / 0,5
3 de 4 16/11/2012 15:23
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
4 de 4 16/11/2012 15:23
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
Nota da Prova: 3,5 de 8,0 Nota do Trabalho: Nota de Participação: 2 Data: 19/11/2012
a
1 Questão (Cód.: 58562) Pontos: 1,5 / 1,5
Resposta: PILHA exemplo: exemplo pilha de pratos empilhados o primeiro que entra é o primeiro que sai, voce
pode empilhar desempilhar saber qual elemento esta no topo, saber si a pilha esta cheia ou vazia é conhecido como
LIFO (ULTIMO QUE ENTRA É O PRIMEIRO QUE SAI). entra e sai pela mesma extremidade. FILA exemplo fila de um
banco: FIFO (primeiro que entra primeiro que sai), entra em uma extremidade e sai por outra, voce pode enfileirar
desenfileirar saber primeiro elemento que entrou, o ultimo elemento que entrou. si a fila esta cheia ou vazia.
a
2 Questão (Cód.: 56276) Pontos: 0,0 / 1,5
Resposta: #include
a
3 Questão (Cód.: 27578) Pontos: 0,0 / 0,5
Diga, para o programa abaixo, qual a opção que melhor representa a saída em tela. (Considere que o programa
será compilado sem erros, e irá executar também sem problemas).
#include
1 de 4 26/11/2012 11:53
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
int tmp;
tmp = *y;
*y = x * 2;
x = tmp+1;
int main()
system("pause");
Valores: 20, 10
Valores: 10, 20
Valores: 13, 20
Valores: 10, 10
Valores: 13, 10
a
4 Questão (Cód.: 27935) Pontos: 0,0 / 0,5
Sobre o funcionamento da busca binária, é incorreto afirmar que dividindo seu vetor em duas metades.
Se o item for menor ao item que está na primeira posição do vetor, o item não foi encontrado.
Se o item for maior que o item que está na metade do vetor procure na segunda metade, ou seja, a da
direita.
Se o item for menor que o item que está na metade do vetor, procure na primeira metade, ou seja, a da
esquerda.
Se o item for igual ao item que está na metade do vetor, o item foi encontrado.
Se o item for igual ao item que está na metade do vetor, o item não foi encontrado.
a
5 Questão (Cód.: 77785) Pontos: 0,5 / 0,5
É um método de pesquisa ou busca, cujo algoritmo parte do pressuposto de que o vetor está
ordenado e realiza sucessivas divisões do espaço de busca, comparando o elemento buscado (chave)
com o elemento no meio do vetor. Se o elemento do meio do vetor for a chave, a busca termina com
sucesso. Caso contrário, se o elemento do meio vier antes do elemento buscado, então a busca
continua na metade posterior do vetor. E finalmente, se o elemento do meio vier depois da chave, a
busca continua na metade anterior do vetor.
linear.
randômica.
binária.
2 de 4 26/11/2012 11:53
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
por comparação.
por contagem.
a
6 Questão (Cód.: 19678) Pontos: 0,0 / 1,0
Uma lista ligada é uma estrutura que corresponde a uma sequência lógica de entradas ou nós. Cada nó armazena a
localização do próximo elemento na sequência, ou seja, de seu nó sucessor. Nessa estrutura,
para estabelecer a ligação entre um nó já pertencente a uma lista e um novo nó, basta fazer com que o
novo nó referencie no, campo next, o nó que anteriormente era referenciado pelo nó original, desde que
esse campo não tenha o valor nulo.
enquanto a entrada que determina o topo da lista é mantida em um nó descritor dessa lista, a entrada que
marca o fim da lista é mantida fora do descritor.
o armazenamento de uma lista requer uma área contígua de memória para permitir a otimização no
processamento de criação e remoção de nós da lista.
a existência de um ponteiro apontando para o 1º elemento e outro para o fim da lista permite que a
inserção ou deleção de dados de um nó que esteja no meio da lista seja rapidamente executada.
o armazenamento de uma lista não requer uma área contígua de memória. Como listas são estruturas
dinâmicas, normalmente são definidos procedimentos que permitem criar e remover nós na memória.
a
7 Questão (Cód.: 28365) Pontos: 0,0 / 0,5
Observe o trecho de código em C/C++ a seguir. O laço for preenche os dados dos candidatos no vetor de
selecionados. (adaptado para C/C++)
1.struct Candidato {
2. char nome[15];
3. double nota;
4. };
5.
6.int main(){
7. struct Candidato selecionados[5];
8. int i;
9. for (i=0; i<5; i++){
10. cout << "Nome: ";
11. cin.get();cin.get(***********,15);
12. cout << "Nota: ";
13. cin >> ***********;
14. }
15. ...
16.}
Observe que o código no interior dos comandos das linhas 11 e 13 foi substituido por ***********.
Para que este programa compile e execute sem erros, os asteriscos nas linhas 11 e 13 devem ser substituídos
respectivamente por:
selecionados.nome[i]
selecionados.nota[i]
Candidato[i].nome
Candidato[i].nota
selecionados[i].nome
selecionados[i].nota
Candidato.nome[i]
Candidato.nota[i]
nome[i]
nota[i]
3 de 4 26/11/2012 11:53
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
a
8 Questão (Cód.: 27978) Pontos: 1,0 / 1,0
O método de ordenação que compara pares de chaves de ordenação, trocando os elementos correspondentes caso
estejam fora de ordem é o método:
bolha
seleção
Heapsort
QuickSort
inserção
a
9 Questão (Cód.: 28104) Pontos: 0,5 / 0,5
Para a criação de uma Fila seqüencial basta iniciar as variáveis de início e final, ou seja, apontá-las para as posições
iniciais do vetor. O que alteraria na rotina de inserir se a variável final fosse inicializada com o valor -1 (menos
um):
a
10 Questão (Cód.: 28131) Pontos: 0,0 / 0,5
O espaço necessário para a representação dos dados pode ser alocado à medida que se torne necessário, através
da alocação dinâmica. Uma estrutura armazenada através de encadeamento apresenta seus nodos alocados em
posições aleatórias na memória, e não lado a lado. Dessa forma, existem várias vantagens no uso de representar
os dados por encadeamento. Marque a alternativa correta que apresenta estas vantagens.
4 de 4 26/11/2012 11:53
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
Nota da Prova: 4,0 de 8,0 Nota do Trabalho: Nota de Participação: 2 Data: 20/11/2012
a
1 Questão (Cód.: 56256) Pontos: 1,0 / 1,5
Protótipo da função :
nw : quantidade de elementos em w
Note :
Inicialmente n vale zero.
Deverá ser retornado true (sucesso na interseção) ou false (fracasso na interseção).
Resposta: intersecao(int v[5 ], int w[5 ], int z [5 ], int nv , int nw , int &n) { while ( i=0; i < = 5;) { for (i < = 5; i
=0; i ++) { if v[i] == w[i] z[i] = v[i]; } } }
a
2 Questão (Cód.: 27608) Pontos: 0,0 / 1,0
Registro
Pilha
Vetor
Loop
Fila
a
3 Questão (Cód.: 56270) Pontos: 0,0 / 1,5
1 de 4 26/11/2012 12:07
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
a
4 Questão (Cód.: 28147) Pontos: 0,5 / 0,5
Em programação podemos utilizar um recurso que modulariza o programa chamado função. As funções precisam
ser ativadas para que possam ser executadas. Para isso, é necessário chamar a função pelo seu nome e enviar,
quando necessário, os valores respectivos para os parâmetros de entrada. Ao enviar os valores para os parâmetros
de entrada, o programa pode fazer uma cópia deste valor ou trabalhar em um endereço enviado. Quando se envia
o endereço estamos ativando a função por meio de:
Ponteiros.
Passagem por valor.
Registro.
Envio de inteiro.
Envio de valor.
a
5 Questão (Cód.: 19681) Pontos: 0,5 / 0,5
Um órgão público adotou dois sistemas de senhas para atender os cidadãos na ordem de chegada. O sistema I
atende os não idosos. O sistema II atende os idosos. Nessa situação:
a
6 Questão (Cód.: 27994) Pontos: 0,0 / 0,5
struct Produto {
int codigo;
char descricao[40];
float preco;
};
2 de 4 26/11/2012 12:07
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
/* atribuição do preço */
...
A forma correta para atribuir 2.99 ao campo preco dentro de função atribui é:
pProd.preco=2.99;
*pProd -> preco=2.99;
(*pProd) -> preco=2.99;
*pProd.preco=2.99;
pProd -> preco=2.99;
a
7 Questão (Cód.: 27935) Pontos: 0,5 / 0,5
Sobre o funcionamento da busca binária, é incorreto afirmar que dividindo seu vetor em duas metades.
Se o item for igual ao item que está na metade do vetor, o item não foi encontrado.
Se o item for maior que o item que está na metade do vetor procure na segunda metade, ou seja, a da
direita.
Se o item for menor ao item que está na primeira posição do vetor, o item não foi encontrado.
Se o item for menor que o item que está na metade do vetor, procure na primeira metade, ou seja, a da
esquerda.
Se o item for igual ao item que está na metade do vetor, o item foi encontrado.
a
8 Questão (Cód.: 19663) Pontos: 1,0 / 1,0
Assinale a alternativa que apresenta duas formas de passagem de parâmetros para uma rotina ou função:
a
9 Questão (Cód.: 27988) Pontos: 0,0 / 0,5
Considerando a estrutura de fila circular vista em sala, que define as seguintes operações com uma fila:
int enfileirar(int v[], int valor, int *fim) - insere um elemento na fila indicada por v.
int desenfileirar(int v[], int *inicio, int fim, float &valor) - remove um elemento da fila indicada por v.
Supondo que foram realizadas as seguintes operações numa fila circular (implementada em uma estrutura linear
sequencial) de números inteiros de tamanho 5, que inicialmente se encontrava vazia:
3 de 4 26/11/2012 12:07
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
Qual a posição, dentro da estrutura linear sequencial (vetor - que representa a fila), que se encontra o último
elemento inserido na fila?
7
1
4
6
5
a
10 Questão (Cód.: 28131) Pontos: 0,5 / 0,5
O espaço necessário para a representação dos dados pode ser alocado à medida que se torne necessário, através
da alocação dinâmica. Uma estrutura armazenada através de encadeamento apresenta seus nodos alocados em
posições aleatórias na memória, e não lado a lado. Dessa forma, existem várias vantagens no uso de representar
os dados por encadeamento. Marque a alternativa correta que apresenta estas vantagens.
4 de 4 26/11/2012 12:07
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
Nota da Prova: 3,0 de 8,0 Nota do Trabalho: Nota de Participação: Data: 09/11/2012
a
1 Questão (Cód.: 58564) Pontos: / 1,5
Resposta: >
a
2 Questão (Cód.: 19673) Pontos: 1,0 / 1,0
Uma fila dupla que se trata de uma lista linear na qual os elementos podem ser inseridos ou removidos de qualquer
extremo denomina-se:
lista aberta
hashing
deque
grafo
lista fechada
a
3 Questão (Cód.: 27620) Pontos: 0,0 / 0,5
Seja Q uma estrutura de dados do tipo fila, em que ENQUEUE(X) significa a adição do elemento X à Q e que
DEQUEUE(), a retirada de um elemento. Q está inicialmente vazia e sofre a seguinte sequencia de operações:
ENQUEUE(1)
ENQUEUE(2)
DEQUEUE()
ENQUEUE(3)
ENQUEUE(4)
DEQUEUE()
DEQUEUE()
ENQUEUE(5)
0
15
5
9
6
1 de 4 16/11/2012 16:55
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
a
4 Questão (Cód.: 27775) Pontos: 0,5 / 0,5
A ordenação é a base na qual, muitos sistemas são construídos. Entendendo a ordenação, tem-se
conhecimento para resolver outros problemas.
A ordenação é a base na qual, muitos programas são construídos. Entendendo a ordenação, tem-se
conhecimento para manter outros problemas.
A ordenação é a base na qual, muitos sistemas são construídos. Entendendo a ordenação, tem-se
conhecimento para manter outros problemas.
A ordenação é a base na qual, muitos algoritmos são construídos. Entendendo a ordenação, tem-se
conhecimento para manter outros problemas.
A ordenação é a base na qual, muitos algoritmos são construídos. Entendendo a ordenação, tem-se
conhecimento para resolver outros problemas.
a
5 Questão (Cód.: 56270) Pontos: / 1,5
Resposta: >
a
6 Questão (Cód.: 28112) Pontos: 0,5 / 0,5
Sistemas operacionais utilizam filas para gerenciar, tarefas, processos e recursos. Qual é a ordenação dos
elementos armazenados aleatoriamente em uma lista do tipo LIFO?
Posições aleatórias
Primeiro que entra é o primeiro a sair
Ordem crescente
Ordem decrescente
Ordem de entrada
a
7 Questão (Cód.: 28126) Pontos: 0,0 / 0,5
As funções em programação permitem que se possa realizar a modularização do código diminuindo assim sua
complexidade. Analise a função abaixo e assinale alternativa que descreve corretamente o tipo de função:
int funcao (int x){
2 de 4 16/11/2012 16:55
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
if(x == 0)
return 0;
else
funcao(x-1);
}
a
8 Questão (Cód.: 27753) Pontos: 0,0 / 1,0
É a saída, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
solução do problema.
Uma sequência de passos computacionais que transforma uma entrada em uma saída previamente
determinada.
O meio para armazenar e organizar dados com o objetivo de facilitar o acesso e as modificações.
O que permite o armazenamento e a recuperação de dados independentemente de seu conteúdo.
A entrada, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
solução do problema.
a
9 Questão (Cód.: 28131) Pontos: 0,5 / 0,5
O espaço necessário para a representação dos dados pode ser alocado à medida que se torne necessário, através
da alocação dinâmica. Uma estrutura armazenada através de encadeamento apresenta seus nodos alocados em
posições aleatórias na memória, e não lado a lado. Dessa forma, existem várias vantagens no uso de representar
os dados por encadeamento. Marque a alternativa correta que apresenta estas vantagens.
a
10 Questão (Cód.: 27963) Pontos: 0,5 / 0,5
O resultado de um concurso foi armazenado por um programador em um vetor, onde cada elemento (descrito pela
struct Candidato) possui a informação da matrícula e nota de cada candidato, conforme descrito a seguir.
Deseja-se que o vetor com os resultados fique ordenado em ordem decrescente pela nota. O programador pretende
usar o algoritmo de busca descrito a seguir, porém precisa de ajuda no trecho contendo ********.
Indique a opção que contém a solução que completa as linhas 1, 3 e 7 do algoritmo.
...
struct Candidato {
char mat[10];
float nota;
};
...
3 de 4 16/11/2012 16:55
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
4 de 4 16/11/2012 16:55
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
Nota da Prova: 4,0 de 10,0 Nota do Trabalho: Nota de Participação: Data: 03/12/2012
a
1 Questão (Cód.: 27759) Pontos: 0,0 / 1,0
A saída, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
solução do problema.
O meio para armazenar e organizar dados com o objetivo de facilitar o acesso e as modificações.
O que permite o armazenamento e a recuperação de dados independentemente de seu conteúdo.
Uma sequência de passos computacionais que transforma uma entrada em uma saída previamente
determinada.
A entrada, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
solução do problema.
a
2 Questão (Cód.: 95225) Pontos: 1,0 / 1,0
A estrutura de dados linear que obedece o seguinte critério: o último elemento inserido será o primeiro elemento a
ser retirado (LIFO) é:
pilha.
árvore AVL.
lista circular.
árvore binária.
fila.
a
3 Questão (Cód.: 27933) Pontos: 1,0 / 1,0
Os elementos são pesquisados aleatoriamente. Pior caso: o elemento está no último índice do meu vetor.
Os elementos são pesquisados de acordo com o índice. Pior caso: o elemento está no último índice do meu
vetor.
Os elementos são pesquisados de acordo com o índice. Pior caso: o elemento está no primeiro índice do
meu vetor.
Os elementos são pesquisados de acordo com o índice. Melhor caso: o elemento está no meio do meu
vetor.
Os elementos são pesquisados de acordo com o índice. Melhor caso: o elemento está no último índice do
meu vetor.
1 de 4 03/12/2012 21:10
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
a
4 Questão (Cód.: 27592) Pontos: 0,0 / 1,0
O que acontece quando tentamos retirar um elemento de uma pilha que já está vazia?
Overflow.
Underflow.
Ordenação.
Remoção.
Inclusão.
a
5 Questão (Cód.: 28000) Pontos: 0,0 / 1,0
int a = 10;
int *x;
x = &a;
*x = 55;
55
existe um erro no trecho de código
65
10
0
a
6 Questão (Cód.: 19729) Pontos: 0,0 / 1,0
LIFO refere-se à estrutura de dados do tipo pilha, que nada mais é do que uma lista linear, duplamente
encadeada.
Um grafo com um único vértice e sem arestas é conhecido como dígrafo.
LIFO refere-se à estrutura de dados do tipo pilha, que nada mais é do que uma lista linear, sem disciplina
de acesso, onde o primeiro elemento a entrar é o último a sair.
Nos sistemas operacionais, a execução dos processos concorrentes ocorre segundo os princípios da
estrutura FILO.
Guardar endereço de memória em "nós", normalmente identificados por previous ou next, é uma
característica presente nas listas duplamente encadeadas.
a
7 Questão (Cód.: 30948) Pontos: 0,0 / 1,0
No programa abaixo, diga em que área de memória serão alocados os elementos de dados y e r, respectivamente.
#include
using namespace std;
int x, y;
float media( float a, float b )
{ float tmp;
tmp = (a + b ) / 2.0;
return ( tmp );
}
int main()
{
2 de 4 03/12/2012 21:10
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
float r;
cout<<"Informe 2 valores: ";
cin>>x>> y;
r = media( x, y );
cout<<"\nMedia = "<< r<<"\n";
system ("pause");
}
a
8 Questão (Cód.: 19681) Pontos: 0,0 / 1,0
Um órgão público adotou dois sistemas de senhas para atender os cidadãos na ordem de chegada. O sistema I
atende os não idosos. O sistema II atende os idosos. Nessa situação:
a
9 Questão (Cód.: 19679) Pontos: 1,0 / 1,0
Sobre estrutura de dados, considere: I. Pilha é uma estrutura de dados com acesso restrito aos seus elementos,
uma vez que eles são colocados e retirados por um único lado e são ordenados pelo princípio LIFO (last in first out).
Assim, sempre que um elemento é adicionado ou retirado seu topo é alterado. II. Pilha é o tipo de estrutura usada,
por exemplo, na avaliação de expressões numéricas, na recursividade e pelos compiladores, na passagem de
parâmetros para as funções. III. Registro é uma estrutura básica que permite guardar coleções de dados de
diferentes tipos, sendo normalmente utilizado quando um objeto tem diferentes atributos, isto é, contém campos
de diferentes tipos. IV. Lista pode conter um número qualquer de elementos, expandindo-se ou contraindo-se
conforme os elementos são inseridos ou retirados. Nesse tipo de estrutura, os acessos tanto podem ser feitos
sequencialmente como diretamente. V. Fila, assim como a pilha , é uma versão especial de lista, e como tal, seus
elementos são ordenados pelo princípio LIFO (last in first out). Está correto o que se afirma APENAS em:
I, II e III.
II, IV e V.
II, III, IV e V.
I, III e V.
I, III, IV e V.
a
10 Questão (Cód.: 28131) Pontos: 1,0 / 1,0
O espaço necessário para a representação dos dados pode ser alocado à medida que se torne necessário, através
da alocação dinâmica. Uma estrutura armazenada através de encadeamento apresenta seus nodos alocados em
posições aleatórias na memória, e não lado a lado. Dessa forma, existem várias vantagens no uso de representar
os dados por encadeamento. Marque a alternativa correta que apresenta estas vantagens.
3 de 4 03/12/2012 21:10
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_pro...
4 de 4 03/12/2012 21:10
Avaliação: CCT0174_AV1_201107032962
Nota da Prova: 2,5 de 8,0 Nota do Trabalho: Nota de Participação: 2 Data: 18/09/2012
As variáveis em programação são utilizadas para armazenar um valor de determinado tipo em um espaço
reservado na memória. Em algumas linguagens de programação podemos declarar, ou seja, reservar um espaço
na memória, fora do escopo da função principal, e fora do escopo de qualquer outra função. Ao fazer a
declaração desta forma estamos declarando uma variável do tipo:
Global
Local
Real
Constante
Inteiro
As estruturas de dados em programação são muito utilizadas para tornar o acesso aos dados mais eficiente e
organizado. A estrutura de dados considerada mais simples e tem como característica apresentar apenas uma
dimensão é:
Matriz
Função
Registro
Variável
Vetor
Considere:
III - A busca seqüencial executa cada fase de repetição na forma de uma subtarefa da fase anterior.
IV - A busca binária trabalha com uma forma circular de repetição. Está correto o que consta em:
O que acontece ao se inserir uma informação quando já usamos toda a área disponível do vetor (topo = fim)?
remoção
ordenação
underflow
overflow
inclusão
#include
x = 3.5;
int main () {
float y=1.5;
func1(y);
return 0;
1.5 1.5
1.5 1.5 0
1.5 1.5 0
1.5 1.5 3.5 1.5
1.5 1.5 3.5 1.5 0
Em programação podemos utilizar um recurso que modulariza o programa chamado função. As funções
precisam ser ativadas para que possam ser executadas. Para isso, é necessário chamar a função pelo seu nome
e enviar, quando necessário, os valores respectivos para os parâmetros de entrada. Ao enviar os valores para os
parâmetros de entrada, o programa pode fazer uma cópia deste valor ou trabalhar em um endereço enviado.
Quando se envia o endereço estamos ativando a função por meio de:
Envio de inteiro.
Passagem por valor.
Registro.
Envio de valor.
Ponteiros.
I. Pilha é uma estrutura de dados com acesso restrito aos seus elementos, uma vez que eles são colocados e
retirados por um único lado e são ordenados pelo princípio LIFO (last in first out). Assim, sempre que um
elemento é adicionado ou retirado seu topo é alterado.
II. Pilha é o tipo de estrutura usada, por exemplo, na avaliação de expressões numéricas, na recursividade e
pelos compiladores, na passagem de parâmetros para as funções.
III. Registro é uma estrutura básica que permite guardar coleções de dados de diferentes tipos, sendo
normalmente utilizado quando um objeto tem diferentes atributos, isto é, contém campos de diferentes tipos.
IV. Lista pode conter um número qualquer de elementos, expandindo-se ou contraindo-se conforme o
elementos são inseridos ou retirados. Nesse tipo de estrutura, os acessos tanto podem ser feitos
sequencialmente como diretamente.
V. Fila, assim como a pilha , é uma versão especial de lista, e como tal, seus elementos são ordenados pelo
princípio LIFO (last in first out).
I, III, IV e V.
I, III e V.
II, III, IV e V.
I, II e III.
II, IV e V.
Os métodos de ordenação são muito utilizados em estruturas de dados para facilitar a busca e a recuperação
posterior de itens de conjuntos ordenados. Existem vários métodos de ordenação, por este motivo, marque
corretamente a alternativa que apresenta o código do método de seleção.
Existem vários algoritmos de busca em estruturas de dados, um destes realiza a busca em vetores, e requer
acesso aleatório aos elementos desta estrutura e parte do pressuposto de que os dados do vetor estejam
ordenados e utiliza a técnica de divisão e conquista comparando o elemento desejado com o elemento do meio
do vetor. Esta técnica ainda verifica se o elemento do meio do vetor for o desejado, a busca termina. Caso
contrário, se o elemento do meio vier antes do elemento buscado, então a busca continua na metade posterior
do vetor. E se o elemento do meio vier depois da chave, a busca continua na metade anterior do vetor. O
algoritmo que utiliza esta metodologia é:
Seleção
Pesquisa binária
Bolha
Inserção
Pesquisa sequencial
As estruturas de dados permitem o uso de certos algoritmos para a ordenação dos elementos de forma a
facilitar a consulta de determinado elemento. Existem vários tipos de algoritmos para realizar a ordenação dos
elementos, onde um algoritmo de ordenação deve rearranjar o vetor de forma a estabelecer uma ordem entre
os elementos. O trecho de código abaixo descreve o algoritmo chamado:
Nota da Prova: 4,0 de 8,0 Nota do Trabalho: Nota de Participação: 2 Data: 17/11/2012
Protótipo da função :
nw : quantidade de elementos em w
Note :
• Inicialmente n vale zero.
• Deverá ser retornado true (sucesso na interseção) ou false (fracasso na interseção).
Resposta: bool intersecao(int v[], int w[],int z[],int nv, int nw, int &n) { n = 0; if ( nv == tam) { cout<<"\nerro"; }
http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_prova=2166730&ti... 21/11/2012
BDQ Prova Página 2 de 5
struct no {
int dado;
struct no *link;
};
Faça uma função para inverter a lista e retornar o ponteiro para o início da lista resultante.
a
4 Questão (Cód.: 95248) Pontos: 0,5 / 0,5
Uma fila duplamente terminada, isto é, uma estrutura linear que permite inserir e remover de ambos os extremos é
chamada de:
Autômato.
Deque.
Shift-and.
Boyer-Moore.
Árvore.
a
5 Questão (Cód.: 27775) Pontos: 0,5 / 0,5
A ordenação é a base na qual, muitos algoritmos são construídos. Entendendo a ordenação, tem-se
conhecimento para manter outros problemas.
A ordenação é a base na qual, muitos sistemas são construídos. Entendendo a ordenação, tem-se
conhecimento para manter outros problemas.
A ordenação é a base na qual, muitos sistemas são construídos. Entendendo a ordenação, tem-se
conhecimento para resolver outros problemas.
A ordenação é a base na qual, muitos algoritmos são construídos. Entendendo a ordenação, tem-se
conhecimento para resolver outros problemas.
A ordenação é a base na qual, muitos programas são construídos. Entendendo a ordenação, tem-se
conhecimento para manter outros problemas.
As estruturas de dados são importantes para a programação porque facilitam a pesquisa, pois permitem a
ordenação dos dados de forma crescente ou decrescente. Dessa forma, assinale a alternativa correta que define um
tipo de dado estruturado.
Podem armazenar apenas um valor de cada vez, se algum valor for atribuído o anterior é apagado.
São tipos de dados indivisíveis.
http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_prova=2166730&ti... 21/11/2012
BDQ Prova Página 3 de 5
Permitem agregar mais do que um valor em uma variável, existindo uma relação estrutural entre seus
elementos.
Consiste da definição do conjunto de valores (denominado domínio) que uma variável pode assumir ao
longo da execução de um programa.
Também são denominados tipos primitivos, não é possível decompor em partes menores.
a
7 Questão (Cód.: 77785) Pontos: 0,5 / 0,5
É um método de pesquisa ou busca, cujo algoritmo parte do pressuposto de que o vetor está
ordenado e realiza sucessivas divisões do espaço de busca, comparando o elemento buscado (chave)
com o elemento no meio do vetor. Se o elemento do meio do vetor for a chave, a busca termina com
sucesso. Caso contrário, se o elemento do meio vier antes do elemento buscado, então a busca
continua na metade posterior do vetor. E finalmente, se o elemento do meio vier depois da chave, a
busca continua na metade anterior do vetor.
por contagem.
por comparação.
binária.
linear.
randômica.
char descricao[40];
float preco;
};
...
}
A forma correta para atribuir 2.99 ao campo preco dentro de função atribui é:
http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_prova=2166730&ti... 21/11/2012
BDQ Prova Página 4 de 5
a
9 Questão (Cód.: 27988) Pontos: 0,0 / 0,5
Considerando a estrutura de fila circular vista em sala, que define as seguintes operações com uma fila:
int enfileirar(int v[], int valor, int *fim) - insere um elemento na fila indicada por v.
int desenfileirar(int v[], int *inicio, int fim, float &valor) - remove um elemento da fila indicada por v.
Supondo que foram realizadas as seguintes operações numa fila circular (implementada em uma estrutura linear
sequencial) de números inteiros de tamanho 5, que inicialmente se encontrava vazia:
Qual a posição, dentro da estrutura linear sequencial (vetor - que representa a fila), que se encontra o último
elemento inserido na fila?
6
5
4
1
7
O resultado de um concurso foi armazenado por um programador em um vetor, onde cada elemento (descrito pela
struct Candidato) possui a informação da matrícula e nota de cada candidato, conforme descrito a seguir.
Deseja-se que o vetor com os resultados fique ordenado em ordem decrescente pela nota. O programador pretende
usar o algoritmo de busca descrito a seguir, porém precisa de ajuda no trecho contendo ********.
Indique a opção que contém a solução que completa as linhas 1, 3 e 7 do algoritmo.
...
struct Candidato {
char mat[10];
float nota;
};
...
http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_prova=2166730&ti... 21/11/2012
BDQ Prova Página 5 de 5
12. }
13.}
http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_prova=2166730&ti... 21/11/2012
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_prova...
Aluno:
Professor: ALEXANDRE SOARES ALVES Turma: 9001/AA
Nota da Prova: 1,5 de 8,0 Nota do Trabalho: Nota de Participação: 2 Data: 21/11/2012
a
1 Questão (Cód.: 28139) Pontos: 0,0 / 1,0
Na área de estrutura de dados, em determinados casos, é necessário utilizar um tipo de dado onde seu valor serve
como referência direta a outro valor alocado em outro espaço de memória. Este tipo de dado se chama:
Matriz
Ponteiro
Variável
Endereço
Vetor
Protótipo da função :
nw : quantidade de elementos em w
Note :
Inicialmente n vale zero.
Deverá ser retornado true (sucesso na interseção) ou false (fracasso na interseção).
Resposta: ?
1 de 4 05/12/2012 09:30
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_prova...
a
3 Questão (Cód.: 56270) Pontos: / 1,5
int dado;
struct no *link;
};
Faça uma função para inverter a lista e retornar o ponteiro para o início da lista resultante.
Protótipo : no *inverter(no *ini); //ini aponta para o início da lista
Resposta: ?
a
4 Questão (Cód.: 28365) Pontos: 0,5 / 0,5
Observe o trecho de código em C/C++ a seguir. O laço for preenche os dados dos candidatos no vetor de
selecionados. (adaptado para C/C++)
1.struct Candidato {
2. char nome[15];
3. double nota;
4. };
5.
6.int main(){
7. struct Candidato selecionados[5];
8. int i;
9. for (i=0; i<5; i++){
10. cout << "Nome: ";
11. cin.get();cin.get(***********,15);
12. cout << "Nota: ";
13. cin >> ***********;
14. }
15. ...
16.}
Observe que o código no interior dos comandos das linhas 11 e 13 foi substituido por ***********.
Para que este programa compile e execute sem erros, os asteriscos nas linhas 11 e 13 devem ser substituídos
respectivamente por:
nome[i]
nota[i]
Candidato[i].nome
Candidato[i].nota
Candidato.nome[i]
Candidato.nota[i]
selecionados[i].nome
selecionados[i].nota
selecionados.nome[i]
selecionados.nota[i]
2 de 4 05/12/2012 09:30
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_prova...
Com a utilização das estruturas de dados e seus tipos, em algumas situações é imprescindível a criação de funções
que façam determinada verificação ou ação nestas estruturas. Dessa forma, analise a função abaixo e marque
corretamente a alternativa que descreve as funcionalidades desta.
a
6 Questão (Cód.: 28147) Pontos: 0,0 / 0,5
Em programação podemos utilizar um recurso que modulariza o programa chamado função. As funções precisam
ser ativadas para que possam ser executadas. Para isso, é necessário chamar a função pelo seu nome e enviar,
quando necessário, os valores respectivos para os parâmetros de entrada. Ao enviar os valores para os parâmetros
de entrada, o programa pode fazer uma cópia deste valor ou trabalhar em um endereço enviado. Quando se envia
o endereço estamos ativando a função por meio de:
Envio de inteiro.
Passagem por valor.
Ponteiros.
Envio de valor.
Registro.
a
7 Questão (Cód.: 28112) Pontos: 0,0 / 0,5
Sistemas operacionais utilizam filas para gerenciar, tarefas, processos e recursos. Qual é a ordenação dos
elementos armazenados aleatoriamente em uma lista do tipo LIFO?
a
8 Questão (Cód.: 28131) Pontos: 0,0 / 0,5
3 de 4 05/12/2012 09:30
BDQ Prova http://bquestoes.estacio.br/prova_resultado_preview.asp?cod_hist_prova...
O espaço necessário para a representação dos dados pode ser alocado à medida que se torne necessário, através
da alocação dinâmica. Uma estrutura armazenada através de encadeamento apresenta seus nodos alocados em
posições aleatórias na memória, e não lado a lado. Dessa forma, existem várias vantagens no uso de representar
os dados por encadeamento. Marque a alternativa correta que apresenta estas vantagens.
a
9 Questão (Cód.: 27978) Pontos: 0,0 / 1,0
O método de ordenação que compara pares de chaves de ordenação, trocando os elementos correspondentes caso
estejam fora de ordem é o método:
Heapsort
seleção
QuickSort
bolha
inserção
a
10 Questão (Cód.: 28104) Pontos: 0,5 / 0,5
Para a criação de uma Fila seqüencial basta iniciar as variáveis de início e final, ou seja, apontá-las para as posições
iniciais do vetor. O que alteraria na rotina de inserir se a variável final fosse inicializada com o valor -1 (menos
um):
4 de 4 05/12/2012 09:30
BDQ Prova Página 1 de 4
É o processo pelo qual um conjunto de dados é colocado em uma ordem crescente ou decrescente.
Consiste em adicionar um valor no vetor, alterando a ordem existente e ajustando o total de elementos.
Consiste em fazer uma busca em um vetor já ordenado, dividindo o espaço de busca ao meio e verificando
se o dado está no meio ou, antes do meio ou depois do meio.
Consiste em fazer uma busca em um vetor desordenado, dividindo o espaço de busca ao meio e verificando
se o dado está no meio ou, antes do meio ou depois do meio.
Consiste em adicionar um valor no vetor, mantendo a ordem existente e ajustando o total de elementos.
Para consultarmos uma estrutura de dados, normalmente, empregamos um tipo de pesquisa de dados. O trecho de
programa a seguir refere-se a uma pesquisa por um elemento único (sua primeira ocorrência), em um conjunto de
elementos de dados armazenado em uma estrutura de acesso indexado e aleatório. Selecione a opção
correspondente ao algoritmo utilizado, no programa, para a referida pesquisa:
else ini = meio+1;
return -1;
pesquisa sequencial
pesquisa cadeias indexada
pesquisa de cadeias
pesquisa binária
http://bquestoes.estacio.br/prova_resultado_preview_aluno.asp?cod_hist_prova=2869... 10/05/2013
BDQ Prova Página 2 de 4
pesquisa indexada
Em programação podemos utilizar um recurso que modulariza o programa chamado função. As funções precisam
ser ativadas para que possam ser executadas. Para isso, é necessário chamar a função pelo seu nome e enviar,
quando necessário, os valores respectivos para os parâmetros de entrada. Ao enviar os valores para os parâmetros
de entrada, o programa pode fazer uma cópia deste valor ou trabalhar em um endereço enviado. Quando se envia
o endereço estamos ativando a função por meio de:
Envio de inteiro.
Registro.
Envio de valor.
Ponteiros.
Passagem por valor.
Considere uma estrutura de dados, representada pela variável P, com procedimentos de inclusão, exclusão e
consulta do próximo elemento (e) disponível na estrutura, obedecendo às seguintes propriedades:
PONTEIRO
STRUCT
LISTA
CONJUNTO
PILHA
Suponha uma listagem, contendo número de inscrição e pontuação (ordenada pelo número de inscrição) dos
candidatos para o cargo de Analista de Sistemas de uma grande empresa pública. São 1024 candidatos inscritos e o
sistema implementado para consulta do resultado, permite busca binária ou busca sequencial pelo número de
inscrição. O número máximo de comparações executadas se fosse utilizada a busca binária e se fosse utilizada
busca sequencial, respectivamente, seria de:
9 e 10
512 e 1024
10 e 10
1024 e 512
9e9
O resultado do concurso para o cargo de uma empresa está armazenado em um vetor, que contém em cada um de seus
http://bquestoes.estacio.br/prova_resultado_preview_aluno.asp?cod_hist_prova=2869... 10/05/2013
BDQ Prova Página 3 de 4
elementos o nome e a nota obtida pelo candidato. Deseja-se que este vetor seja ordenado pela nota, em ordem
decrescente. Sendo o vetor pequeno (poucos elementos), o programador responsável por desenvolver este algoritmo,
escolheu um método de ordenação que executa os seguintes passos:
Selecione candidato com maior nota entre todos e troque-o com o candidato que está na primeira posição do
vetor;
Selecione o segundo maior e troque-o com o candidato que está na segunda posição;
Os passos descritos anteriormente são seguidos para a terceira nota, quarta nota e assim por diante até que reste
apenas um candidato.
Os métodos de ordenação são muito utilizados para facilitar a recuperação posterior de itens ordenados. Existem
vários métodos de ordenação, por esse motivo, assinale corretamente a alternativa que mostra o nome do método
que utiliza a estratégia de ordenação por trocas de vizinhos e é considerado o método mais simples.
Hash
Inserção
Binária
Seleção
Bolha
O registro de ativação de uma sub-rotina é o conjunto das informações que devem/precisam ser alocadas em
memória. Assinale abaixo a única opção que representa a composição destas informações.
http://bquestoes.estacio.br/prova_resultado_preview_aluno.asp?cod_hist_prova=2869... 10/05/2013
BDQ Prova Página 4 de 4
As estruturas de dados em programação são muito utilizadas para tornar o acesso aos dados mais eficiente e
organizado. A estrutura de dados considerada mais simples e tem como característica apresentar apenas uma
dimensão é:
Função
Vetor
Matriz
Variável
Registro
http://bquestoes.estacio.br/prova_resultado_preview_aluno.asp?cod_hist_prova=2869... 10/05/2013
BDQ Prova Página 1 de 4
Nota da Prova: 3,5 de 8,0 Nota do Trabalho: Nota de Participação: 2 Data: 14/06/2013 18:16:19
Se a e b são variáveis inteiras (int) e p1 e p2 ponteiros para int, quais das seguintes expressões de atribuição está
errada?
a = (*p1 + *p2)/b+1;
p1 = &a;
*p2 = *p1;
*p2 = &b;
b = *p2;
As estruturas de dados permitem o uso de certos algoritmos para a ordenação dos elementos de forma a facilitar a
consulta de determinado elemento. Existem vários tipos de algoritmos para realizar a ordenação dos elementos,
onde um algoritmo de ordenação deve rearranjar o vetor de forma a estabelecer uma ordem entre os elementos. O
trecho de código abaixo descreve o algoritmo chamado:
MergeSort
Bolha
QuickSort
Inserção
Seleção
As variáveis em programação são utilizadas para armazenar um valor de determinado tipo em um espaço
reservado na memória. Em algumas linguagens de programação podemos declarar, ou seja, reservar um espaço na
memória, fora do escopo da função principal, e fora do escopo de qualquer outra função. Ao fazer a declaração
desta forma estamos declarando uma variável do tipo:
Local
http://bquestoes.estacio.br/prova_resultado_preview_aluno.asp?cod_hist_prova=3225... 20/06/2013
BDQ Prova Página 2 de 4
Constante
Real
Inteiro
Global
Quando as inserções e as remoções ocorrem sempre no mesmo lado da lista, trata-se de uma estrutura de dados
denominada.
Lista encadeada.
Fila.
Vetor.
Lista circular.
Pilha.
Resposta: A fila usa a lógica FIFO, que diz que o primeiro elemento a entrar será o primeiro a sair
A entrada, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
solução do problema.
O que permite o armazenamento e a recuperação de dados independentemente de seu conteúdo.
Uma sequência de passos computacionais que transforma uma entrada em uma saída previamente
determinada.
O meio para armazenar e organizar dados com o objetivo de facilitar o acesso e as modificações.
É a saída, que satisfaz a quaisquer restrições impostas pelo problema, necessária para se calcular uma
solução do problema.
int main() {
int *ptr;
ptr = vet;
http://bquestoes.estacio.br/prova_resultado_preview_aluno.asp?cod_hist_prova=3225... 20/06/2013
BDQ Prova Página 3 de 4
return 0;
}
70 10
80 50
70 73
80 10
80 83
Sistemas operacionais utilizam filas para gerenciar, tarefas, processos e recursos. Qual é a ordenação dos
elementos armazenados aleatoriamente em uma lista do tipo LIFO?
Faça uma função que receba dois vetores v e w de inteiros como parâmetros e gere um vetor
resultante da interseção entre v e w.
Protótipo da função :
nw : quantidade de elementos em w
http://bquestoes.estacio.br/prova_resultado_preview_aluno.asp?cod_hist_prova=3225... 20/06/2013
BDQ Prova Página 4 de 4
Note :
Inicialmente n vale zero.
Deverá ser retornado true (sucesso na interseção) ou false (fracasso na interseção).
Gabarito:
bool intersecao(int v[], int w[], int inter[], int nv , int nw , int &n) {
if (v[i] == w[j]) {
inter[n] = v[i];
achou = true;
n++;
return achou;
http://bquestoes.estacio.br/prova_resultado_preview_aluno.asp?cod_hist_prova=3225... 20/06/2013
ESTRUTURA DE DADOS
A técnica LIFO (last in first out), utilizada em programação estruturada, é fundamentada no conceito de:
Registro
Pilha
Fila
Loop
Ponteiro
a-b-a-c-c-b
c-a-a-b-c-b
a-a-a-b-c-b
b-b-a-c-c-c
a-c-a-b-c-a
Assinale a alternativa que apresenta duas formas de passagem de parâmetros para uma rotina ou função:
O que acontece quando tentamos retirar um elemento de uma pilha que já está vazia?
Remoção.
Ordenação.
Inclusão.
Overflow.
Underflow.
Marque a opção que representa uma característica CORRETA a respeito da estrutura de dados pilha.
Considere uma estrutura de dados do tipo vetor. Com respeito a tal estrutura, é correto que seus componentes
são caracteristicamente:
Sua Resposta: Pilha Utiliza-se a ordenação Last In First Out (LIFO). Fila Utiliza-se a ordenação First In Fisrt Out
(FIFO).
Compare com a sua resposta: Pilha se caracteriza por ser uma estrutura de dados que são inseridos e retirados
numa sequencia semelhante as anilhas de alteres, isto é, usa a lógica LIFO. Já uma fila se caracteriza por ser
um estrutura semelhante a fila de banco, isto é, os dados vão chegando e sendo processados e retirados da
estrutura. Essa lógica é chamada de FIFO.
struct TipoLista{
int elemt[TAMMAX];
};
Fundamento no tipo de dado(registro) acima que representa uma implementação de uma lista linear sequencial.
Construa um procedimento para adicionar um dado no final da lista.
A lista e o dado serão passados por parâmetro. Usar o mecanismo de passagem por referência se for
necessário.
Sua Resposta:
lista.qtde++;
}}
aaa aaa 1 4
SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS
SSS
: : :: SS0SS00S00S : : : : : : : : :: : SS : : SSSES6ESSSSSS66SS66S
a
S Soo0oooo ))) ) )))))) : : : S0E S0E
: : :: : : :: : : : : :: : : : : : )
) : :: : : : : : : : : : : : :: : :: : : : : :)
) : :: : : : : : : : : : : : :: : :: : : : : :)
) : :: :: : : : :: : : : : : : : :: : :::
: :: : : : : : : )
: : :: :: : : : : : : : : :: :: : :: :: : )
) : :: :: : : : :: : : : : : : : : :: : :::
: :: : : : : : : )
a
S Soo0oooo ))) ) )))))) : : : S0S S0S
:: : : :: : : :: : : : : : : : : : : : :: :
: :: : : : : :: :: : : : : : : :: : : : :) : : : : : :: : ::
: :: : ::: : : : : : : : : : :: : : :: : :: : : : :
:: : : : ) : :: :: : : ::: : : : : : : : :: : : :
: : : : : :: : : : : : : : :: : :: : : : :
)
: ::
t :t ::
a :
o : :
a
S Soo0oooo ))) ) )))))) : : : S0S S0E
:: : :: )
: :: : : : : : : : : : : )
:: : : : : :: : : : : ): : )
:: : : : : :: : : : : ): : )
: : : : : : : :: : )
: : : : : ::: : :: : : : : ): : : : : : )
a
6 Soo0oooo ))) ) )))))) : : : S0E S0E
: : : : : : : : :: :.:: : ) .. : : : ::: : : : : )
: ::. :: : : : : : : :)
: : :: : : : : : :: : : :: :): )
:: : : : : : :: : : :: :: )
.:: : : : : :: : : : : :: :: )
.:: : : : : .:: : : : :: :: )
a
E Soo0oooo ))) ) )))))) : : : S0S S0S
) : : : ::: : : : : : :: : : : ::: : : : :: . :: : :
: : : :: ::: :: : ::: : : :) : :: : :: : : : : :
: :: : : : : : : ::: :: : : :: )
:: : ): : )) : : : )
{
: : ) : ) )) ) ) )))
: ) ) ) )) )
: : : )
: : : ))
}
. : : : :: : : :: : :: )
. : : : : : : : :: )
. : : ): : : : :: )
. : : ): : :: : :: )
. : : : : : : : :: )
a
S Soo0oooo ))) ) )))))) : : : S0S S0S
) )) ) ) ) )
: : )
: : : :
: : :
: : : :
: : : : :
: : :
a
6 Soo0oooo ))) ) )))))) : : : S0S S0E
) : :
o : : :: : : :: : : : :: : : : : : : : :: : : : :: )
oo : : :: : : :: : : : :: : : : : : : : : : :: )
ooo : :: : : : : : : : : : : :: : : :: : : : : : : :)
o : :: : : :: : : : : : : :: : :: : : : ) :: : :: : : :: :
) )o :)
):) o oo ooo o )
)a) oo :)
))) o oo :)
) )o o :)
a
0 Soo0oooo ))) ) )))))) : : : S0S S0S
: ::: : : : : :: : : : : :: : : :: : : : : : : : : :: : : : :
: : : : :: : : ) :: : : :: : : :: : : : : : : : : :
: : :: : : :: : : : : :: :: : : : : : : :: : : : :)
:: :: :) : ::: : :: :: :
: :: : ) : )) : ){
: : :: : : : .:: : :
:. : )
: : : : : :: : :
: ) ) ) ) ):. : ))
:. : ) )
:: :
:: :
:: : ) ):. : ) ) )))
:: : ::
: ::
a :
t :t ::
o : :
a
S Soo0oooo ))) ) )))))) : : : S0S S0S
: : : : : :: : : : : : : : :: :: : : : : : : : :: :
: : : : : .: : ::: : : :: : : ) :: : : :: :
.: : ::: ): : : : : : : : .: : ::: : : : : :
: : : : : : : : : : :: : :: : : : :: : : : : :
: : : .: : ::: : : : : : .: : ::: : : :: :
: :) : : :: : : :: : .: : ::: .: : :::
: : : : :: : :: : : : : :: ) ) : : :: : : : : :: : : : : : .: :
::: : : : : : : : :: : : : : :: : : : :) : : : :
: : :: : : : : : .: : ::: : : : : : : :: : :
: : : : : : :) : :: : : : : : :: : : : : : : ::
: : )
: :: )
:: : :)
:: : : )
:)
a
SS Soo0oooo ))) ) )))))) : : : S0S S0S
:: ::: : : : :: :: : :: : : :: :)
o) : : : ::: : : : : : : :: : ::: : :: : : : : : :: : : :
: :: : : :. : : : : : :. o ) :: : ::: :)) :: : : : : : : :
: : :: : : : : )
oo) : : : ::: : : : : : : :: : : :: : : : :: :
: : : : :: : : : :: : : :: :)
o ) :: : : : : .: : : : : : : : :: : : : :: : : :
: : : : : :: :) : :: : ::: : : : : :: : : : :: :: : :: : : : : :
: : : : )
) :: : : : : : :: : : :: : : : : : : : :: : :
: :. o ) :: : ::: :))
o oo ooo)
oo o )
oo ooo o )
o ooo o )
o ooo )
: :. : : : ). )) )))) : )) )) )))))
Os sistemas e tecnologias de informação e comunicação (TIC) têm nas empresas um papel cada vez mais
importante na prestação de serviços com maior grau de exigência. Atendendo a esta realidade foi
desenvolvida na Inglaterra a ITIL - Information Technology Infrastructure Library, que se baseia nas
especificações do ________________.
PMBOK (Project Management Body Of Knowledge).
ISACF (Information Systems Audit and Control Foundation).
SLM - Service Level Management ou Gestão de Níveis de Serviço.
CobiT (Control Objectives for Information and related Technology) como um guia para a gestão de
TI.
Capability Maturity Model Integration (CMMI).
O processo do SLA (Acordo de Nível de Serviço) pode ir de uma simples administração de redes de comunicações até à gestão
completa dos sistemas e tecnologias de informação e comunicação (TIC) de uma organização.
Como exemplo, podemos citar alguns pontos que têm a ver com um SLA para um Serviço de Help Desk que vai apoiar os usuários de
TI na sua operação diária:
I. Uma situação pode ser reportada por telefone, telegrama ou fax, não havendo a necessidade de implantar um modelo
I. Uma situação pode ser reportada por telefone, telegrama ou fax, não havendo a necessidade de implantar um modelo
padrão de atendimento.
II. As chamadas durante os três primeiros meses de uma nova release são gratuitas, a partir desse período terão um
determinado custo por minuto.
III. O Help Desk está disponível 7 dias / semana e 24 horas por dia. Assegura-se que o tempo de espera de cada chamada
será, em 95% dos casos, inferior a um minuto.
Número de processos críticos de negócios não cobertos por um plano formal de disponibilidade de
serviços.
Frequência de pesquisa de satisfação com os clientes.
Percentual de variação entre o orçamento realizado e o planejado.
Número de aditivos contratuais.
Índice de satisfação dos usuários com o suporte de 1º nível.
Número de processos críticos de negócios não cobertos por um plano formal de disponibilidade de
serviços.
Analise as sentenças abaixo sobre as Responsabilidades do Gerente de Nível de Serviço e, em seguida, assinale
a alternativa correta. Um Acordo de Nível de Serviço (SLA, do inglês Service Level Agreement) é a parte de
contato de serviços entre duas ou mais entidades no qual o nível da prestação de serviço é definido
formalmente. Na prática, o termo é usado no contexto de tempo de entregas de um serviço ou de um
desempenho específico. Responsabilidades do Gerente de Nível de Serviço são:
I. Realizar revisões de técnicas com a equipe de desenvolvimento.
II. Negociar, documentar e divulgar os Acordos de Nível de Serviço e Acordos de Nível Operacional.
III. Identificar, entender e documentar os Requisitos de Nível de Serviço atuais e futuros.
IV. Medir, registrar e analisar a satisfação dos clientes com os serviços entregues.
Apenas as sentenças II, III e IV estão corretas.
Apenas as sentenças I, III e IV estão corretas.
Apenas as sentenças I e III estão corretas.
Apenas as sentenças I, II e III estão corretas.
Apenas as sentenças I, II e IV estão corretas.
Dentre os vários processos que constituem a ITIL, podemos definir a Gestão de Nível de Serviço como o processo de planejar,
coordenar, acordar, monitorizar e reportar os SLA (Acordos de Nível de Serviço), que deve:
III. Deve garantir que o custo necessário e justificável da qualidade de serviço se mantém e é progressivamente melhorado.
Somente II e IV corretas.
Somente I, II e III corretas.
Somente I e III corretas.
Somente I, II e IV corretas.
Somente II, III e IV corretas.
Avaliação: CCT0260_AV1_201201857163 » ESTRUTURA DE DADOS
Tipo de Avaliação: AV1
Pontos: 0,5
1a Questão (Cód.: 95280)
/ 0,5
Assinale a opção certa.
Pontos: 0,5
2a Questão (Cód.: 27591)
/ 0,5
O que acontece ao se inserir uma informação quando já usamos toda a área disponível do vetor (topo
= fim)?
remoção
ordenação
inclusão
overflow
underflow
Pontos: 1,0
3a Questão (Cód.: 31184)
/ 1,0
Existem vários tipos de algoritmos para realizar a ordenação dos elementos, onde um algoritmo de
ordenação deve rearranjar o vetor de forma a estabelecer uma ordem entre os elementos. Marque a
alternativa correta que cita o algoritmo cuja descrição é: "considera cada elemento uma vez
inserindo-o em seu lugar correto entre os elementos que já estão em ordem". E o seu passo a passo
pode ser descrito como: "o elemento é inserido entre os ordenados movendo-se os elementos
maiores que ele uma posição para a direita e posteriormente inserindo-o na posição vaga".
QuickSort
Inserção
Seleção
Bolha
MergeSort
Pontos: 1,0
4a Questão (Cód.: 28107)
/ 1,0
Tanto a operação TOP (acessa topo), quanto à operação POP (remover), permite acessar o último
elemento armazenado em uma Pilha. Quanto à diferença entre ambas as operações em relação ao
estado da Pilha é correto afirmar:
Pontos: 1,0
5a Questão (Cód.: 27631)
/ 1,0
Considere uma estrutura de dados, representada pela variável P, com procedimentos de inclusão,
exclusão e consulta do próximo elemento (e) disponível na estrutura, obedecendo às seguintes
propriedades:
PILHA
CONJUNTO
STRUCT
LISTA
PONTEIRO
Pontos: 0,0
6a Questão (Cód.: 28128)
/ 1,0
Os métodos de ordenação são muito utilizados em estruturas de dados para facilitar a busca e a
recuperação posterior de itens de conjuntos ordenados. Existem vários métodos de ordenação, por
este motivo, marque corretamente a alternativa que apresenta o código do método de seleção.
Pontos: 1,0
7a Questão (Cód.: 19815)
/ 1,0
Observe o algorítmo a seguir, onde ocorre a passagem de parâmetro por valor e por referência,
respectivamente, de ITALIA para FIAT e de FRANCA para HONDA.
85 e FALSO
97 e FALSO
85 e VERDADEIRO
97 e VERDADEIRO
25 e FALSO
Pontos: 0,5
8a Questão (Cód.: 28114)
/ 0,5
As estruturas de dados em programação são muito utilizadas para tornar o acesso aos dados mais
eficiente e organizado. A estrutura de dados considerada mais simples e tem como característica
apresentar apenas uma dimensão é:
Vetor
Variável
Registro
Matriz
Função
Pontos: 0,0
9a Questão (Cód.: 27582)
/ 0,5
Considere:
III - A busca seqüencial executa cada fase de repetição na forma de uma subtarefa da fase anterior.
IV - A busca binária trabalha com uma forma circular de repetição. Está correto o que consta em:
Pontos: 1,0
10a Questão (Cód.: 31182)
/ 1,0
As estruturas de dados permitem o uso de certos algoritmos para a ordenação dos elementos de
forma a facilitar a consulta de determinado elemento. Existem vários tipos de algoritmos para
realizar a ordenação dos elementos, onde um algoritmo de ordenação deve rearranjar o vetor de
forma a estabelecer uma ordem entre os elementos. O trecho de código abaixo descreve o algoritmo
chamado:
MergeSort
Bolha
Seleção
QuickSort
Inserção
Avaliação: CCT0174_AV1_201002006538 » ESTRUTURA DE DADOS
I - Uma lista linear sequencial é um vetor em linguagens estruturadas, também chamado de array.
II - Um elemento de uma lista linear sequencial pode ser acessado diretamente através de um índice.
III - Uma lista linear sequencial pode ter elementos de um mesmo tipo, ou de tipos diferentes.
Para consultarmos uma estrutura de dados, normalmente, empregamos um tipo de pesquisa de dados. O trecho
de programa a seguir refere-se a uma pesquisa por um elemento único (sua primeira ocorrência), em um
conjunto de elementos de dados armazenado em uma estrutura de acesso indexado e aleatório. Selecione a
opção correspondente ao algoritmo utilizado, no programa, para a referida pesquisa:
return -1;
}
pesquisa de cadeias
pesquisa indexada
pesquisa sequencial
pesquisa cadeias indexada
pesquisa binária
Consiste em fazer uma busca em um vetor desordenado, dividindo o espaço de busca ao meio e
verificando se o dado está no meio ou, antes do meio ou depois do meio.
Consiste em fazer uma busca em um vetor já ordenado, dividindo o espaço de busca ao meio e
verificando se o dado está no meio ou, antes do meio ou depois do meio.
É o processo pelo qual um conjunto de dados é colocado em uma ordem crescente ou decrescente.
Consiste em adicionar um valor no vetor, mantendo a ordem existente e ajustando o total de elementos.
Consiste em adicionar um valor no vetor, alterando a ordem existente e ajustando o total de elementos.
c-a-a-b-c-b
a-a-a-b-c-b
a-c-a-b-c-a
b-b-a-c-c-c
a-b-a-c-c-b
Existem vários algoritmos de busca em estruturas de dados, um destes realiza a busca em vetores, e requer
acesso aleatório aos elementos desta estrutura e parte do pressuposto de que os dados do vetor estejam
ordenados e utiliza a técnica de divisão e conquista comparando o elemento desejado com o elemento do meio
do vetor. Esta técnica ainda verifica se o elemento do meio do vetor for o desejado, a busca termina. Caso
contrário, se o elemento do meio vier antes do elemento buscado, então a busca continua na metade posterior
do vetor. E se o elemento do meio vier depois da chave, a busca continua na metade anterior do vetor. O
algoritmo que utiliza esta metodologia é:
Bolha
Seleção
Pesquisa sequencial
Pesquisa binária
Inserção
6a Questão (Cód.: 28144) Pontos: 1,0 / 1,0
Com a utilização das estruturas de dados e seus tipos, em algumas situações é imprescindível a criação de
funções que façam determinada verificação ou ação nestas estruturas. Dessa forma, analise a função abaixo e
marque corretamente a alternativa que descreve as funcionalidades desta.
Assinale a alternativa que apresenta duas formas de passagem de parâmetros para uma rotina ou função:
A técnica LIFO (last in first out), utilizada em programação estruturada, é fundamentada no conceito de:
pilha
loop
array
fila
ponteiro
Os métodos de ordenação são muito utilizados em estruturas de dados para facilitar a busca e a recuperação
posterior de itens de conjuntos ordenados. Existem vários métodos de ordenação, por este motivo, marque
corretamente a alternativa que apresenta o código do método de seleção.
b = *p2;
*p2 = *p1;
*p2 = &b;
p1 = &a;
a = (*p1 + *p2)/b+1;
Pontos: 0,0
2a Questão (Cód.: 31182)
/ 1,0
As estruturas de dados permitem o uso de certos algoritmos para a ordenação dos elementos de
forma a facilitar a consulta de determinado elemento. Existem vários tipos de algoritmos para
realizar a ordenação dos elementos, onde um algoritmo de ordenação deve rearranjar o vetor de
forma a estabelecer uma ordem entre os elementos. O trecho de código abaixo descreve o algoritmo
chamado:
QuickSort
Seleção
MergeSort
Inserção
Bolha
Pontos: 1,5
3a Questão (Cód.: 58564)
/ 1,5
Como é a lógica do FIFO?
Resposta
ENQUEUE(1)
ENQUEUE(2)
DEQUEUE()
ENQUEUE(3)
ENQUEUE(4)
DEQUEUE()
DEQUEUE()
ENQUEUE(5)
6
5
15
0
9
Pontos: 0,0
5a Questão (Cód.: 27966)
/ 0,5
Qual o valor da variável a ao final da execução do trecho de programa a seguir?
int main() {
int a, b, *p;
a=4;
b = 2;
p = &a;
a++;
*p = a + b;
(*p)++;
(*p) += a;
cout << "\n a = " << a << endl;
return(0);
16
8
5
4
7
Pontos: 0,0
6a Questão (Cód.: 28140)
/ 0,5
Geralmente em algumas situações é necessário fazer a desalocação do espaço utilizado na memória.
Porém, isso depende de como a reserva de uma quantidade de espaço de memória é feita, pois em
alguns casos, o próprio compilador faz a desalocação. Quando o compilador não faz esta
desalocação a memória foi reservada utilizando______.
Declaração de vetor
Declaração de matriz
Alocação estática de memória
Declaração de função
Alocação dinâmica de memória
Pontos: 0,5
7a Questão (Cód.: 19660)
/ 0,5
Diferentes tipos de estrutura de dados são adequadas a diferentes tipos de aplicação e algumas são
altamente especializadas, destinando-se a algumas tarefas específicas. Dessa forma a definição de
Estrutura de Dados está expressa na alternativa:
Pontos: 0,5
8a Questão (Cód.: 19664)
/ 0,5
A técnica LIFO (last in first out), utilizada em programação estruturada, é fundamentada no conceito
de:
fila
ponteiro
array
pilha
loop
Pontos: 0,0
9a Questão (Cód.: 56256)
/ 1,5
Os agentes Leo e Lia receberam sequências de números de seus contatos. Para
saberem qual o próximo passo da missão, precisam descobrir que números se repetem
nas sequências recebidas por cada um.
Faça uma função que receba dois vetores v e w de inteiros como parâmetros e gere um vetor z,
resultante da interseção entre v e w.
Protótipo da função :
nw : quantidade de elementos em w
Note :
Inicialmente n vale zero.
Deverá ser retornado true (sucesso na interseção) ou false (fracasso na interseção).
Resposta:
Gabarito:
bool intersecao(int v[], int w[], int inter[], int nv , int nw , int &n) {
if (v[i] == w[j]) {
inter[n] = v[i];
achou = true;
n++;
return achou;
}
Pontos: 0,5
10a Questão (Cód.: 19663)
/ 0,5
Assinale a alternativa que apresenta duas formas de passagem de parâmetros para uma rotina ou função: