Escolar Documentos
Profissional Documentos
Cultura Documentos
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
ESTRUTURA DE DADOS Lupa
Retornar
Exercício: CCT0260_EX_A1_2015 Matrícula:
Aluno(a): Data: 18/08/2015 21:37:45 (Finalizada)
I A estrutura de dados que melhor representa os diretórios ou pastas de arquivos do computador é a árvore.
II A estrutura de dados FILA é não linear assim como o Grafo.
III O termo folha em uma estrutura de dados é usado para um nó sem filhos e que tem grau 0,
IV O grau de uma árvore é definido pelo número de subárvores de um nó.
V O grafo é uma estrutura de dados que tem limitação para o número de vértices.
VI Uma das aplicações da estrutura de dados grafo é a Computação Gráfica.
Gabarito Comentado
As estruturas de dados podem ser caracterizadas como sendo uma forma organizada de armazenar
dados ou informações na memória, de modo a otimizar o acesso a estes. Muitas vezes existem
algoritmos de manipulação de dados associados a estas estruturas.
Verifique as seguintes sentenças:
I-Filas são estruturas que recuperam os dados na ordem direta em que estes foram armazenados.
II-As Pilhas são estruturas que recuperam os dados na ordem reversa em que estes foram
armazenados.
III-As Pilhas são estruturas que recuperam os dados na ordem direta em que estes foram
armazenados.
IV-As Filas são estruturas que recuperam os dados na ordem reversa em que estes foram
armazenados.
Marque a alternativa CORRETA:
Os irmãos Silva irão viajar por vários países da Europa e por isso, traçaram no mapa o percurso que farão, de cidade
a cidade. Qual a estrutura de dados mais adequada para modelar este problema ?
Grafo
Pilha
Fila
Árvore
Lista
As estruturas de dados podem ser caracterizadas como sendo uma forma organizada de
armazenar dados ou informações na memória, de modo a otimizar o acesso a estes. Muitas
vezes existem algoritmos de manipulação dados associados a estas estruturas. Verifique as
seguintes sentenças:
I-Filas são estruturas que recuperam os dados na ordem direta em que estes
foram armazenados.
II-As Pilhas são estruturas que recuperam os dados na ordem reversa em que estes
foram armazenados.
III-As Pilhas são estruturas que recuperam os dados na ordem direta em que estes
foram armazenados.
IV-As Filas são estruturas que recuperam os dados na ordem reversa em que estes
foram armazenados.
Gabarito Comentado
Gabarito Comentado
Gabarito Comentado
Retornar
ESTRUTURA DE DADOS Lupa
Retornar
Exercício: CCT0260_EX_A2_2015 Matrícula:
Aluno(a): Data: 20/08/2015 00:17:59 (Finalizada)
Gabarito Comentado
Gabarito Comentado
Blocos únicos de códigos que realizam diversas tarefas distitintas são de dificil manutenção.
Portanto, utiliza-se a tecnica da modularização de programas, a fim de facilitar a implementação e a
manutenção dos programas. Esta técnica, também chamada de modularização, tem como principal
elemento:
As Estruturas de Dados
Os Grafos
As funções
Os Vetores
As Filas
Global
Inteiro
Constante
Real
Local
Gabarito Comentado
Ponteiros.
Envio de inteiro.
Registro.
Passagem por valor.
Envio de valor.
Gabarito Comentado
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.
Gabarito Comentado
Retornar
ESTRUTURA DE DADOS Lupa
Retornar
Exercício: CCT0260_EX_A3_2015 Matrícula:
Aluno(a): Data: 22/08/2015 18:50:07 (Finalizada)
Pode-se definir uma estrutura heterogênea como sendo um conjunto de elementos, geralmente,
agrupados sob uma lógica e associados por um nome. Esses elementos podem ser variáveis simples,
matrizes ou ainda outras estruturas. Seja a definição de uma estrutura como: struct aluno { string
nome; float media; }; Suponha ainda que exista um vetor desta estrutura, definido como: aluno vet [
10]; Marque a alternativa em que é atribuída de forma correta a media 6.0 para o quarto elemento
deste vetor.
aluno[3].10=6.0;
aluno[10]=6.0;
aluno[3].media=6.0;
vet[3].media=6.0;
vet[3].aluno=6.0;
Gabarito Comentado
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.
Não é possível criar um vetor de structs, pois o vetor trabalha apenas com dados do
mesmo tipo.
Gabarito Comentado
struct aluno {
string nome;
float nota;
};
Marque a alternativa em que é atribuída de forma correta a nota 5.7 para o décimo primeiro
elemento deste vetor.
vet[10].aluno.nota=5.7 ;
aluno.vet[10].nota=5.7;
vet[10].nota=5.7;
vet[10]=aluno.5.7;
aluno.vet[10]=5.7;
Pode-se definir uma estrutura heterogênea como sendo um conjunto de elementos, geralmente,
agrupados sob uma lógica e associados por um nome.
Esses elementos podem ser variáveis simples, matrizes ou ainda outras estruturas. Seja a definição
de uma estrutura como:
struct aluno {
string nome;
float nota;
};
Marque a alternativa em que é atribuída de forma correta a nota 5.7 para o décimo primeiro
elemento deste vetor.
aluno.vet[10].nota=5.7;
vet[10]=aluno.5.7;
vet[10].nota=5.7;
vet[10].aluno.nota=5.7 ;
aluno.vet[10]=5.7;
struct Livro {
int codigo;
float preco;
} liv;
liv->preco = 30.70;
liv.preco = 30.70;
Livro.liv.codigo = 12345;
Livro.codigo = 12345;
Livro->liv.codigo = 12345;
Retornar
ESTRUTURA DE DADOS Lupa
Retornar
Exercício: CCT0260_EX_A4_2015 Matrícula:
Aluno(a): Data: 22/09/2015 16:07:50 (Finalizada)
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
Quicksort
Seleção
Inserção
Heapsort
Gabarito Comentado
Em relação à classificação do método de ordenação, assinale abaixo aquele que, durante o processo
de ordenação, só usa a memória principal:
Ordenação Eficiente
Ordenação Simples Externa
Ordenação Simples
Ordenação Externa
Ordenação Interna
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
Bolha
Inserção
Seleção
Binária
Gabarito Comentado
Gabarito Comentado
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:
por comparação.
por contagem.
linear.
randômica.
binária.
Gabarito Comentado
Retornar
ESTRUTURA DE DADOS Lupa
Retornar
Exercício: CCT0260_EX_A5_2015 Matrícula:
Aluno(a): Data: 23/09/2015 08:58:53 (Finalizada)
__________________________ é uma lista linear em que a alocação de memória pode ser estática,
e que a forma de armazenamento é contígua ou sequencial na memória. Usamos este tipo de lista
quando se tem em mente um tamanho pré-definido, ou seja, quando se sabe até onde a lista pode
crescer.
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
remoção
inclusão
Gabarito Comentado
As estruturas de dados são utilizadas para manter dados ou informações organizados na memória, o
que possibilita a otimização do uso destes dados. Porém, as estruturas guardam características
especiais na manipulação destes dados, assim deve-se escolher a estrutura certa ou mais adequada
para uma determinada aplicação. Portanto marque a opção que representa a melhor estrutura,
quando se tem como requisitos principais o acesso aleatório aos dados e alocação destes de forma
contínua na memória.
Lista Sequencial
Pilha Sequencial
Fila Sequencial
Pilha Encadeada
Lista Encadeada
Gabarito Comentado
Considere uma lista com n livros, em que cada livro é modelado pela struct :
struct Livro {
string titulo, editora, autor;
float preco;
};
A função X abaixo
implementa a operação de :
Gabarito Comentado
Retornar
Retornar
Exercício: CCT0260_EX_A6_2015 Matrícula:
Aluno(a): Data: 03/10/2015 09:27:55 (Finalizada)
As pilhas sequenciais são estruturas que guardam a ordem reversa dos dados nelas armazenados,
e isto em muitas ocasiões é muito vantajoso. A operação usada para inserir um elemento X numa
pilha é conhecida na literatura como PUSH (X). Para remover um elemento de uma pilha a
operação é o POP( ). Assim estas duas funções devem implentar o algoritmo LIFO (Last In -
First Out ) ou o último a entrar é o primeiro a sair. Sendo assim se aplicarmos as seguintes
operações em uma PILHA vazia:
PUSH(10),PUSH(5),POP(),PUSH(7),POP(),PUSH(2),POP(),POP( ).
10 e 2
Nenhum, a pilha estará vazia.
7e2
Apenas o 2
Apenas o 10
Gabarito Comentado
Gabarito Comentado
Gabarito Comentado
A estrutura de dados do tipo pilha (stack) é um tipo abstrato de dado baseada no princípio:
Da indiferença.
De dividir para conquistar.
Da localidade de referência.
Last In First Out (LIFO).
First In First Out (FIFO).
Gabarito Comentado
struct Pilha {
int topo;
float v[10];
};
p.topo = -1;
p->topo = 0;
topo.pilha = -1;
Pilha.topo = -1;
Pilha.topo = 0;
Pilhas são estruturas de dados que se utilizam do algoritmo LIFO, last in first
out, ou melhor, o último a entrar é o primeiro a sair. Desta forma pode-se
abstrair que existe apenas um local para a saída e a entrada de dados, ou
seja o topo da pilha.
Supondo que uma pilha seja implementada por um vetor de inteiros de
tamanho 10 e que exista uma variável global chamada topo para indexar
esta posição de entrada e saída de dados e ainda quando esta variável
assume o valor -1 indica que a pilha está vazia. Marque a opção que melhor
ilustra a função de exclusão de um dado do vetor pilha, supondo ainda que o
vetor tenha sido declarado inicialmente de forma global.
Gabarito Comentado
Retornar
Retornar
Exercício: CCT0260_EX_A7_2015 Matrícula:
Aluno(a): Data: 03/10/2015 19:14:28 (Finalizada)
Assinale a opção que, corretamente, mostra exemplos em que a estrutura de dados fila é usada, de acordo com o
critério de inserções e remoções que rege tal estrutura.
Fila de pessoas para tirar o visto e fila de pessoas para usar o caixa eletrônico.
Fila de arquivos para impressão e fila de pessoas no caixa de um supermercado.
Fila de arquivos para impressão e buffer para gravação de dados em fila.
Buffer para gravação de dados em mídia e fila de pessoas para comprar o ticket do metrô.
Fila de documentos para xerox e fila de arquivos para impressão.
A
D
X
C
W
3a Questão (Ref.: 201502799973) Fórum de Dúvidas (0) Saiba (0)
Considere uma fila simples F de inteiros, do tipo Fila definido abaixo. Tal fila deverá armazenar códigos de agentes de uma
firma de espionagem, desde que haja espaço para um novo agente. Assinale a opção que corretamente enfileira o código de
um agente, sabendo que a fila F foi inicializada de acordo com o trecho de código abaixo.
Fila F;
F. inicio = 0;
F.fim = -1;
if (F.fim == 99)
cout << "Não há espaço na firma para mais agentes. " << endl;
else
F.fim++;
F.v[F.fim] = codigo;
F.fim++;
F.v[F.fim] = codigo;
if (F.fim == 100)
cout << "Não há espaço na firma para mais agentes. " << endl;
else {
F.fim++;
F.v[F.fim] = codigo;
}
}
if (F.fim == 99)
cout << "Não há espaço na firma para mais agentes. " << endl;
else {
F.fim++;
F.v[F.fim] = codigo;
F.v[F.fim] = codigo;
F.fim++;
O que acontece quando se deseja inserir um elemento em uma FILA que já está cheia?
Dequeue.
A inserção é feita sem problema.
Underflow.
Enqueue.
Overflow.
As estruturas de dados podem ser do tipo estática e dinâmica. As listas são estruturas parecidas com
vetores podendo ser do tipo dinâmica. Entretanto, existem várias implementações de estruturas do
tipo listas. Dessa forma, a estrutura que para o acesso de um dado, este precisa estar na saída, caso
contrário, precisa remover os elementos a sua frente, é chamada de:
Bolha
Pilha
Struct
Matriz
Fila
Gabarito Comentado
Um banco adotou dois sistemas de senhas para atender os cidadãos na ordem de chegada. O sistema
I atende todas pessoas que não possuem atendimento prioritário. O sistema II atende somente
pessoas com atendimento prioritário. Nessa situação,
Retornar
ESTRUTURA DE DADOS Lupa
Retornar
Exercício: CCT0260_EX_A8_2015 Matrícula:
Aluno(a): Data: 04/10/2015 12:21:42 (Finalizada)
Gabarito Comentado
Intercalar a ordem dos dados da lista do final para o início, atualizando a lista.
Alterar a ordem dos dados da lista do final para o início, atualizando a lista.
Juntar duas listas, colocando uma lista no final de outra, obtendo, ao final, uma só lista
resultante.
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.
Gabarito Comentado
Gabarito Comentado
Em uma aplicação que usa processos de alocação estática e dinâmica de memória é correto afirmar
que
Apenas a memória associada às variáveis do tipo vetor é alocada após o inicio da execução da
aplicação
Todas as afirmações acima são incorretas
Toda a memória utilizada pela aplicação não muda durante toda a sua execução
A memória utilizada pela aplicação é totalmente alocada após o inicio de sua execução
Considere uma lista simplesmente encadeada com placas de carros. Assinale a opção que, corretamente, imprime todas as
placas da lista. Considere :
struct no {
string placa;
struct no *link;
};
if (p != NULL) {
p = plink;
}
void imprimir(no *p) {
while (p != NULL) {
p = plink;
void imprimir(no p) {
while (p != NULL) {
p = plink;
while (p != NULL) {
cout << pplaca;
while (p != NULL) {
p = p.link;
Dr. Pei Tam possui uma lista não ordenada de pacientes de seu consultório em que registra apenas
o nome endereço e o telefone de cada paciente. Como não há limites para o crescimento de sua
lista, como se pode implementar a inserção de um novo paciente na lista, sabendo que cada
paciente é do tipo Paciente e a lista é do tipo List assim definidos :
struct Paciente {
};
struct List {
Paciente p;
};
novo->p = pt;
novo->link =i;
return novo;
List novo[];
novo[0].p = pac;
novo[0].link = i;
return novo;
List *novo ;
novo->p = pt;
novo->link = i;
return novo;
}
List * inserePac(List *i) {
Paciente pat;
novo->p = pat;
novo->link = i;
return novo;
novo.p = pac;
novo.link = i;
return novo;
Gabarito Comentado
Retornar
Retornar
Exercício: CCT0260_EX_A9_2015 Matrícula:
Aluno(a): Data: 13/10/2015 20:06:05 (Finalizada)
Assumindo que estamos com uma estrutura de dados do tipo FIFO, as operações abaixo vão resultar
em que elementos na mesma: PUSH(2), PUSH(3), PUSH(4), POP(), POP(), PUSH(5), PUSH(7),
POP()
25
345
247
234
57
Tínhamos declarado um ponteiro de nome ptr e precisávamos construir uma estrutura de repetição que
pudesse repetir enquanto o ponteiro não fosse nulo. Observe os trechos abaixo e assinale qual a afirmativa
correta.
I if (ptr !=NULL)
II if( !ptr )
III if(ptr)
IV while (ptr !=NULL)
V while (ptr)
I e II estão corretas.
III e V estão corretas
IV e V estão corretas.
Gabarito Comentado
Para converter de decimal para binário usamos a estrutura de dados pilha. Assinale a opção que,
corretamente, indica as ações corretas para empilhar o resto da divisão gerado no processo de
conversão, considerando uma lista simplesmente encadeada. Considere o tipo definido abaixo :
struct no {
int dado;
struct no *link;
};
Basta alocar memória com new e armazenar o resto da divisão do número por 2 no campo
dado do novo nó .
Basta alocar memória com new, armazenar o resto da divisão do número por 2 no campo
dado do novo nó e aterrar o link do novo nó.
Não é necessário alocar memória com new. Basta criar uma struct do tipo no, armazenar o
resto da divisão número por 2 no campo dado e aterrar o campo link.
É preciso alocar memória com new, armazenar o resto da divisão do número por 2 no
campo dado do novo nó, apontar o link do novo nó para o início da lista e enfim, retornar o
ponteiro para o novo nó.
É preciso armazenar o resto da divisão do número por 2 no campo dado do primeiro nó da
lista e retornar o ponteiro para este nó.
Sabendo que uma fila encadeada possui seus nós definidos pela :
struct no {
int x;
no *prox;
};
no *p=new no;
no *p -> new no;
p *no -> new no;
p *no=new no;
no p -> new no;
Retornar
ESTRUTURA DE DADOS Lupa
Retornar
Exercício: CCT0260_EX_A10_2015 Matrícula:
Aluno(a): Data: 13/10/2015 21:41:34 (Finalizada)
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 dados,
marque a alternativa correta.
struct nomeRegistro{
int info;
struct nomeRegistro* ant;
struct nomeRegistro* prox;
};
Fila
Matriz
Lista encadeada
Lista duplamente encadeada
Pilha
Em uma lista duplamente encadeada, seus nodos são compostos por campos cujos tipos podem ser
de diferentes naturezas, entretanto dois de seus campos devem ser ponteiros para o mesmo tipo do
nodo, são estes os ponteiros ant e prox, que apontam, respectivamente, para o nodo anterior e para o
próximo nodo. Esta característica permite que a estrutura seja percorrida em ambos os sentidos.
Assim analisando as operações a seguir:
p->ant->prox=p->prox;
p->prox->ant=p->ant;
Sendo p um ponteiro que aponta para um dos nodos da lista, pode-se afirmar que:
struct listaDE
{
int info;
struct listaDE* ant;
struct listaDE* prox;
};
...
listaDE* novo = new listaDE;
novo->info = valor;
novo->prox = LISTA;
novo->ant = NULL;
Gabarito Comentado
Gabarito Comentado
Gabarito Comentado
struct nodupla {
int dado;
struct nodupla *dlink; // aponta p/ o nó à direita
struct nodupla *elink; // aponta p/ o nó à esquerda
};
A opção que corretamente mostra as instruções para inserir um valor no início da lista apontada
por p é :
nodupla *novo;
nodupla *novo;
nodupla *novo;
nodupla *novo;
I e V são verdadeiras
II E IV são verdadeiras
III e V são verdadeiras
II e V são verdadeiras
I , II e IV são verdadeiras
Gabarito Comentado.
I A estrutura de dados que melhor representa os diretórios ou pastas de arquivos do computador é a árvore.
II A estrutura de dados FILA é não linear assim como o Grafo.
III O termo folha em uma estrutura de dados é usado para um nó sem filhos e que tem grau 0,
IV O grau de uma árvore é definido pelo número de subárvores de um nó.
V O grafo é uma estrutura de dados que tem limitação para o número de vértices.
VI Uma das aplicações da estrutura de dados grafo é a Computação Gráfica.
pilha
fila
lista
árvore
grafo
Gabarito Comentado.
lista
fila
pilha
grafo
árvore
Gabarito Comentado.
Gabarito Comentado.
int main( )
{
float a=10.0;
float b=4.0;
cout < < media(a,b);
return 0;
}
float media(float x, float y) { return (x+y)/2;}
Gabarito Comentado.
Gabarito Comentado.
Constante
Global
Local
Real
Inteiro
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.
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".
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.
Gabarito Comentado.
#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");
}
Gabarito Comentado.
Gabarito Comentado.
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 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, o item foi encontrado.
Se o item for igual ao item que está na metade do vetor, o item foi encontrado.
Se o item for maior que o item que está na metade do vetor procure na primeira metade, ou seja, a da
direita.
Gabarito Comentado.
return -1;
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 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.
Gabarito Comentado.
Pesquisa de seleção
Pesquisa sequêncial
Pesquisa binária
Tabela Hash
Pesquisa ordenada
Gabarito Comentado.
struct aluno {
string nome;
float nota;
};
Marque a alternativa em que é atribuída de forma correta a nota 5.7 para o décimo elemento deste vetor.
vet[10]=aluno.5.7;
aluno.vet[10].nota=5.7;
vet[10].aluno.nota=5.7 ;
vet[10].nota=5.7;
aluno.vet[10]=5.7;
Gabarito Comentado.
Binária
Seleção
Bolha
Hash
Inserção
Gabarito Comentado.
Assinale a alternativa onde estão presentes os valores corretos de v[i], aux etemp.
6,4e6
67, 3 e 15
18, 2 e 67
67, 4 e 23
23 , 4, e 6
Gabarito Comentado.
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.
Inserção
Bolha
Quicksort
Heapsort
Seleção
Gabarito Comentado.
6e2
6e4
7e1
6e1
5e5
Gabarito Comentado.
QuickSort
Seleção
MergeSort
Bolha
Inserção
Gabarito Comentado.
Pilha
Ponteiro
Struct
Matriz
Fila
Gabarito Comentado.
Gabarito Comentado.
Evidentemente, muitos faltaram às provas e o número exato não era sabido quando foi pedido ao
desenvolvedor que definisse uma função para que pudesse listar toda inscrição, e respectiva nota de
redação tabulada, que tivesse alcançado uma pontuação maior ou igual à nota procurada e, ao final, o
total de estudantes que atingiram essa meta.
Como só interessava a nota de redação, o desenvolvedor definiu a struct abaixo e começou a definir
a função queFaz(...) para que pudesse atender ao que foi pedido, usando a estrutura de dados Lista
Sequencial.
LIFO
ARRAY
FIFO
TABLE
RECORD
Gabarito Comentado.
Considere a chamada da função conforme linha abaixo, sabendo-se que vet é um vetor de tamanho 5 e que
não tem nenhum valor ainda:
Analise as afirmativas abaixo que sugerem correções, ou não, na definição na função e assinale a opção
que contem as afirmativas corretas.
Gabarito Comentado.
I Não existe movimentação na pilha quando inserimos ou removemos um elemento. Apenas o valor da
variável que controla o topo é alterado.
II Não podemos usar estruturas homogêneas, ou heterogêneas e uma variável para controlar o topo na
alocação sequencial.
III Um dos fatores que limita o crescimento da pilha é a quantidade de memória alocada quando usamos
matrizes.
IV Quando formos empilhar um elemento, é preciso verificar se a pilha não está cheia. Isso evita underflow.
V Quando formos desempilhar um elemento, é preciso verificar se a pilha não está vazia. Isso evita overflow.
Gabarito Comentado.
PUSH(10),PUSH(5),POP(),PUSH(7),POP(),PUSH(2),POP(),POP( ).
10 e 2
Nenhum, a pilha estará vazia.
Apenas o 10
7e2
Apenas o 2
árvore
pilha
fila
lista
grafo
Sabemos que podemos representar uma expressão de três formas, sendo que uma
delas é chamada de notação polonesa reversa ( pós-fixa).
Suponha que um professor de Estrutura de Dados desejasse compor a nota do
bimestre com uma prova e um trabalho oral, usando pesos diferenciados para as
notas. Sendo assim, usaria a média ponderada como a expressão abaixo.
A única calculadora que encontrou disponível foi uma com representação pós fixa.
Assinale a alternativa que apresenta a sequência que deveria ser digitada pelo
professor para conseguir calcular a média de um aluno.
Gabarito Comentado.
I e IV estão corretas.
I e II estão corretas.
I, II e V estão corretas.
I, II e IV estão corretas.
II e III estão corretas.
Gabarito Comentado.
fila circular
pilha sequencial
lista circular
pilha circular
lista sequencial
Gabarito Comentado.
Fila
Pilha
Matriz
Bolha
Struct
Gabarito Comentado.
Gabarito Comentado.
if (F.fim == n)
else {
F.fim++;
F.v[F.fim] = valor;
if (F.fim == n - 1)
F.fim++;
F.v[F.fim] = valor;
if (F.fim == n - 1)
else {
F.fim++;
F.v[F.fim] = valor;
if (fim == n - 1)
else {
fim++;
v[fim] = valor;
if (F.fim == n - 1)
else
F.v[F.fim] = valor;
Gabarito Comentado.
Um aluno do EAD estava estudando para a prova de Estrutura quando viu o trecho do
programa abaixo em uma apostila.
Como não estava com seu micro, começou a analisar a função entra(...), ficando atento a
alguns membros da struct.
Quando finalizou, virou a página da apostila e viu a resposta. Então, ficou muito feliz por
ter identificado a estrutura
Fila
Lista simplesmente encadeada
Fila Circular
Lista Linear
Pilha
Gabarito Comentado.
struct no
{
int dado;
struct no *proximo;
};
int main()
{
no *lista=new no;
no *pt= new no;
lista->dado=1989;
lista->proximo=NULL;
...
//Nesse ponto, assuma que cinco nós foram alocados em uma lista simplesmente encadeada e valores
atribuídos aos membros dado na sequência: 1989 2014 2011 1962 2002 e, que através do comando
abaixo, o ponteiro pt passou a apontar para um nó da lista.
pt->proximo=lista->proximo->proximo;
Gabarito Comentado.
Gabarito Comentado.
struct Paciente {
};
struct List {
Paciente p;
};
Paciente pat;
novo->p = pat;
novo->link = i;
return novo;
List *novo ;
novo->p = pt;
novo->link = i;
return novo;
}
List * inserePac(List *i, Paciente pac)
novo.p = pac;
novo.link = i;
return novo;
}
novo->p = pt;
novo->link =i;
return novo;
List novo[];
novo[0].p = pac;
novo[0].link = i;
return novo;
Gabarito Comentado.
Gabarito Comentado.
Gabarito Comentado.
Vetor
Registro
Pilha
Fila
Loop
Gabarito Comentado.
int a = 10;
int *x;
x = &a;
*x = 55;
10
65
55
0
existe um erro no trecho de código
Gabarito Comentado.
Gabarito Comentado.
insere-se em qualquer posição, antes ou após qualquer nó, visto que é dinâmica.
só pode ter seus dados impressos no sentido do último nó para o primeiro nó.
Gabarito Comentado.
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.
São tipos de dados indivisíveis.
Podem armazenar apenas um valor de cada vez, se algum valor for atribuído o anterior é apagado.
Gabarito Comentado.
Gabarito Comentado.
Gabarito Comentado.
Gabarito Comentado.
Encadeada.
Binária.
Estática.
Combinada.
Seqüencial.
Gabarito Comentado.
Em uma lista simplesmente encadeada cada nó aponta para nó seguinte e para o nó anterior.
Em uma lista duplamente encadeada cada nó aponta para nó seguinte.
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 simplesmente encadeada cada nó aponta para um único nó enquanto a lista duplamente
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.
p->dir=t;
p->esq = p->dir;
p->dir = t;
t=p;
p->esq = p->dir;
p->dir = p->esq;
t=p->dir;
p->esq = p->dir;
p->dir = t;
p->esq = p->dir;
t = p->esq;
p->dir = t;
t=p->dir;
p->dir = p->esq;
p->esq = t;
Intercalar a ordem dos dados da lista do final para o início, atualizando a lista.
Alterar 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.
Gabarito Comentado.
Exercício: CCT0260_EX_A1_201510492054_V1 Matrícula: 201510492054
Aluno(a): ALLISON LEONE FRANCELINO RAMOS DA SILVA Data: 07/05/2017 22:14:59 (Finalizada)
Preciso cadastrar todos os interessados em meu novo curso de programação. Qual a estrutura de dados mais
adequada para modelar este problema, visto que não há qualquer preocupação com ordem de chegada ou saída de
aluno da turma.
Árvore
Pilha
Grafo
Fila
Lista
As estruturas de dados podem ser caracterizadas como sendo uma forma organizada de armazenar dados
ou informações na memória, de modo a otimizar o acesso a estes. Muitas vezes existem algoritmos de
manipulação dados associados a estas estruturas. Verifique as seguintes sentenças:
I-Filas são estruturas que recuperam os dados na ordem direta em que estes foram armazenados.
II-As Pilhas são estruturas que recuperam os dados na ordem reversa em que estes
foram armazenados.
III-As Pilhas são estruturas que recuperam os dados na ordem direta em que estes
foram armazenados.
IV-As Filas são estruturas que recuperam os dados na ordem reversa em que estes
foram armazenados.
Gabarito Comentado
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.
Gabarito Comentado
Gabarito Comentado
6a Questão (Ref.: 201510808399) Fórum de Dúvidas (1) Saiba (1)
pilha
lista
grafo
fila
árvore
Gabarito Comentado
A que estrutura pertence a definição: " Uma estrutura não linear que é um conjunto de nós e suas conexões
entre eles e não há limitação de vértices. Muito utilizada para representação de percursos em mapas."
filas encadeadas
pilhas encadeadas
structs
grafos
listas encadeadas
As estruturas de dados são utilizadas para manter dados ou informações organizados na memória, o que
possibilita a otimização do uso destes dados. Porém, as estruturas guardam características especiais na
manipulação destes dados, assim deve-se escolher a estrutura certa ou mais adequada para uma determinada
aplicação. Portanto marque a opção que representa a melhor estrutura, quando se tem como requisitos
principais o acesso aleatório aos dados e alocação destes de forma contínua na memória.
Pilha Sequencial
Lista Sequencial
Pilha Encadeada
Lista Encadeada
Fila Sequencial
Aluno(a): ALLISON LEONE FRANCELINO RAMOS DA SILVA Data: 07/05/2017 22:17:22 (Finalizada)
1a Questão (Ref.: 201511151799) Fórum de Dúvidas (1 de 1) Saiba (1 de 1)
Uma função possui um valor de retorno inteiro, recebe por valor um inteiro como primeiro parâmetro e por
referência um inteiro como segundo parâmetro. Qual das respostas abaixo poderia representar o protótipo
dessa função:
Gabarito Comentado
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.
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".
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.
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.
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.
Gabarito Comentado
Gabarito Comentado
4a Questão (Ref.: 201510569406) Fórum de Dúvidas (1 de 1) Saiba (1 de 1)
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.
Envio de valor.
Passagem por valor.
Ponteiros.
Registro.
Gabarito Comentado
Funções são instrumentos de modularização de programas, que tem como finalidade tornar o código mais legível,
isto é mais fácil de entender, evita replicação de instruções e permite o reuso das funções em outros programas.
Então considere o seguinte código:
int main( )
{
float a=10.0;
float b=4.0;
cout < < media(a,b);
return 0;
}
float media(float x, float y) { return (x+y)/2;}
O código não compila, pois há necessidade de se declarar float media(float, float) como protótipo da
função float media(float x, float y)antes da função principal.
O código não compila, pois a função float media(float x, float y) retorna um valor que seria ser
armazenado em uma variável do tipo float e só então poderia ser usado o comando cout para exibir o
resultado.
O código compila normalmente e apresenta como resultado o valor 7.0
O código não compila, pois os parâmetros usados na chamada da função deveriam ser "x" e "y"; porém
a chamada se deu com identificadores "a" e "b".
O código compila normalmente, pois como a descrição da função float media(float x, float y)está
posicionada após a função int main ( ), não há necessidade do uso de protótipos.
Gabarito Comentado
6a Questão (Ref.: 201511157680) Fórum de Dúvidas (1) Saiba (1)
Blocos únicos de códigos que realizam diversas tarefas distitintas são de dificil manutenção. Portanto, utiliza-se
a tecnica da modularização de programas, a fim de facilitar a implementação e a manutenção dos programas.
Esta técnica, também chamada de modularização, tem como principal elemento:
As Filas
As funções
Os Grafos
Os Vetores
As Estruturas de Dados
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:
Real
Inteiro
Local
Global
Constante
Gabarito Comentado
referência
número
caracter
void
valor
Aluno(a): ALLISON LEONE FRANCELINO RAMOS DA SILVA Data: 07/05/2017 22:18:18 (Finalizada)
Loop
Fila
Pilha
Registro
Vetor
Gabarito Comentado
Pode-se definir uma estrutura heterogênea como sendo um conjunto de elementos, geralmente,
agrupados sob uma lógica e associados por um nome.
Esses elementos podem ser variáveis simples, matrizes ou ainda outras estruturas. Seja a definição de
uma estrutura como:
struct aluno {
string nome;
float nota;
};
Marque a alternativa em que é atribuída de forma correta a nota 5.7 para o décimo primeiro elemento
deste vetor.
aluno.vet[10]=5.7;
vet[10].aluno.nota=5.7 ;
vet[10].nota=5.7;
aluno.vet[10].nota=5.7;
vet[10]=aluno.5.7;
struct Livro {
int codigo;
float preco;
} liv;
Livro.codigo = 12345;
Livro.liv.codigo = 12345;
liv.preco = 30.70;
liv->preco = 30.70;
Livro->liv.codigo = 12345;
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?
Gabarito Comentado
Não é possível criar um vetor de structs, pois o vetor trabalha apenas com dados do
mesmo tipo.
Cada elemento da struct é denominado membro ou campo, sendo que a struct pode
armazenar elementos de tipos diferentes ou não.
Cada elemento da struct é chamado campo e cada campo deve ser, obrigatoriamente,
de um tipo de dados distinto de outro campo.
Gabarito Comentado
Pode-se definir uma estrutura heterogênea como sendo um conjunto de elementos, geralmente, agrupados sob
uma lógica e associados por um nome. Esses elementos podem ser variáveis simples, matrizes ou ainda outras
estruturas. Seja a definição de uma estrutura como: struct aluno { string nome; float media; }; Suponha ainda
que exista um vetor desta estrutura, definido como: aluno vet [ 10]; Marque a alternativa em que é atribuída de
forma correta a media 6.0 para o quarto elemento deste vetor.
vet[3].media=6.0;
aluno[10]=6.0;
aluno[3].media=6.0;
vet[3].aluno=6.0;
aluno[3].10=6.0;
Pode-se definir uma estrutura heterogênea como sendo um conjunto de elementos, geralmente, agrupados sob
uma lógica e associados por um nome.
Esses elementos podem ser variáveis simples, matrizes ou ainda outras estruturas. Seja a definição de uma
estrutura como:
struct aluno {
string nome;
float nota;
};
Marque a alternativa em que é atribuída de forma correta a nota 5.7 para o décimo primeiro elemento deste
vetor.
vet[10]=aluno.5.7;
aluno.vet[10]=5.7;
aluno.vet[10].nota=5.7;
vet[10].aluno.nota=5.7 ;
vet[10].nota=5.7;
Aluno(a): ALLISON LEONE FRANCELINO RAMOS DA SILVA Data: 07/05/2017 22:19:37 (Finalizada)
int i , // índice
aux, // auxiliar para troca
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
Heapsort
Quicksort
Mergesort
Gabarito Comentado
Gabarito Comentado
Sabendo-se que o método de seleção também é um método de ordenação que baseia seu algoritmo em trocas
entre os elementos de um vetor, se submetermos a sequencia de inteiros armazenada em um vetor inicialmente
na seguinte ordem : 13, 23, 3, 8, 1. Pode-se dizer que quando o menor elemento do vetor alcançar sua posição
final, a ordenação apresentada no vetor é:
1,8,3,23,13
1,3,23,8,13
1,23,13,8,3
1,23,3,8,13
1,13,23,8,3
Gabarito Comentado
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
Inserção
Bolha
Pesquisa binária
Pesquisa sequencial
Gabarito Comentado
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 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.
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 não foi encontrado.
Gabarito Comentado
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
Quicksort
Seleção
Inserção
Gabarito Comentado
É 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 ......
por comparação.
binária.
por contagem.
linear.
randômica.
Gabarito Comentado
Em relação à classificação do método de ordenação, assinale abaixo aquele que, durante o processo de
ordenação, só usa a memória principal:
Ordenação Interna
Ordenação Simples
Ordenação Simples Externa
Ordenação Eficiente
Ordenação Externa
Aluno(a): ALLISON LEONE FRANCELINO RAMOS DA SILVA Data: 07/05/2017 22:20:32 (Finalizada)
As estruturas de dados são utilizadas para manter dados ou informações organizados na memória, o que possibilita
a otimização do uso destes dados. Porém, as estruturas guardam características especiais na manipulação destes
dados, assim deve-se escolher a estrutura certa ou mais adequada para uma determinada aplicação. Portanto
marque a opção que representa a melhor estrutura, quando se tem como requisitos principais o acesso aleatório
aos dados e alocação destes de forma contínua na memória.
Pilha Encadeada
Lista Sequencial
Pilha Sequencial
Lista Encadeada
Fila Sequencial
Gabarito Comentado
Gabarito Comentado
O que acontece ao se inserir uma informação quando já usamos toda a área disponível do vetor (topo = fim)?
remoção
underflow
ordenação
inclusão
overflow
Gabarito Comentado
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
Variável
Vetor
Matriz
Registro
Gabarito Comentado
__________________________ é uma lista linear em que a alocação de memória pode ser estática, e que a
forma de armazenamento é contígua ou sequencial na memória. Usamos este tipo de lista quando se tem em
mente um tamanho pré-definido, ou seja, quando se sabe até onde a lista pode crescer.
Lista Linear Sequencial
Lista Linear Não Alocada
Lista Linear Não Sequencial
Lista Não Linear
Lista Linear de Alocação de Memória
Gabarito Comentado
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.
Considere uma lista com n livros, em que cada livro é modelado pela struct :
struct Livro {
string titulo, editora, autor;
float preco;
};
A função X abaixo
implementa a operação de :
Tipo de Avaliação: AV
Resposta: Na lógica FIFO (First In First Out), o primeiro dado a entrar, é o primeiro a sair. A chamada fila.
Faça uma função em C++ para criar uma lista duplamente encadeada com um nó e
armazenar neste nó o valor 100. Note que deverá ser retornado o ponteiro para o nó
criado. Considere
struct nodupla {
int dado;
};
Resposta:
Gabarito:
nodupla *cria()
{
nodupla *novo;
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.
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.
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 contagem.
linear.
binária.
por comparação.
As estruturas de dados podem ser do tipo estática e dinâmica. As listas são estruturas parecidas com vetores
podendo ser do tipo dinâmica. Entretanto, existem várias implementações de estruturas do tipo listas. Dessa
forma, a estrutura que para o acesso de um dado, este precisa estar na saída, caso contrário, precisa remover
os elementos a sua frente, é chamada de:
Fila
Matriz
Bolha
Pilha
Struct
As estruturas de dados podem ser caracterizadas como sendo uma forma organizada de armazenar
dados ou informações na memória, de modo a otimizar o acesso a estes. Muitas vezes existem
algoritmos de manipulação dados associados a estas estruturas. Verifique as seguintes sentenças:
I-Filas são estruturas que recuperam os dados na ordem direta em que estes foram armazenados.
II-As Pilhas são estruturas que recuperam os dados na ordem reversa em que estes
foram armazenados.
III-As Pilhas são estruturas que recuperam os dados na ordem direta em que estes
foram armazenados.
IV-As Filas são estruturas que recuperam os dados na ordem reversa em que estes
foram armazenados.
Sabemos que podemos representar uma expressão de três formas, sendo que uma
delas é chamada de notação polonesa reversa ( pós-fixa).
Suponha que um professor de Estrutura de Dados desejasse compor a nota do
bimestre com uma prova e um trabalho oral, usando pesos diferenciados para as
notas. Sendo assim, usaria a média ponderada como a expressão abaixo.
A única calculadora que encontrou disponível foi uma com representação pós fixa.
Assinale a alternativa que apresenta a sequência que deveria ser digitada pelo
professor para conseguir calcular a média de um aluno.
Tipo de Avaliação: AV
Nota da Prova: 3,0 Nota de Partic.: 1 Av. Parcial 2 Data: 16/06/2016 15:27:53
O aproveitamento da Avaliação Parcial será considerado apenas para as provas com nota maior ou igual a 4,0.
Defina um tipo de dado (registro) capaz de armazenar as seguintes informações sobre um determinado cliente
de um banco: nome, CPF, RG, número da conta, data de abertura da conta, e saldo.
Com base neste tipo de dado, construa o trecho código em C++ que represente a leitura dos dados do cliente
feita pelo usuário.
Resposta:
Gabarito:
struct ClienteBanco{
string nome;
string cpf;
int rg;
int numConta;
double saldo;
};
ClienteBanco cliente;
Em relação a filas e pilhas dinâmicas, cite uma das vantagens de se implementar estruturas dinamicamente.
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.
Permitem agregar mais do que um valor em uma variável, existindo uma relação estrutural entre seus
elementos.
São tipos de dados indivisíveis.
Também são denominados tipos primitivos, não é possível decompor em partes menores.
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.
Fila
Registro
Vetor
Loop
Pilha
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, 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.
É 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.
O que acontece ao se inserir uma informação quando já usamos toda a área disponível do vetor (topo = fim)?
inclusão
ordenação
underflow
overflow
remoção
Quando as inserções e as remoções ocorrem sempre no mesmo lado da lista, trata-se de uma estrutura de
dados denominada.
Pilha.
Vetor.
Lista circular.
Fila.
Lista encadeada.
Analisando a figura abaixo, marque a alternativa correta que apresenta o tipo de estrutura de dados utilizado.
Struct
Matriz
Pilha
Fila
Hash
10a Questão (Ref.: 201502501549) Pontos: 0,0 / 0,5
struct listaDE
{
int info;
struct listaDE* ant;
struct listaDE* prox;
};
...
listaDE* novo = new listaDE;
novo->info = valor;
novo->prox = LISTA;
novo->ant = NULL;
Observação: Estou ciente de que ainda existe(m) 1 questão(ões) não respondida(s) ou salva(s) no sistema, e que mesmo
assim desejo finalizar DEFINITIVAMENTE a avaliação.
ESTRUTURA DE DADOS
Simulado: CCT0260_SM_201503534791 V.1 Fechar
Aluno(a): MAURO DE OLIVEIRA CARNEIRO Matrícula: 201503534791
Desempenho: 10,0 de 10,0 Data: 30/09/2015 18:13:27 (Finalizada)
1a Questão (Ref.: 201503607938) Pontos: 1,0 / 1,0
Outpost 2 Inferno Orgulho e Espe
Negro (2015) ... (2015) BRRip .
Em relação a estruturas de dados, avalie a correspondência existente entre as estruturas
de dados Lineares e Não Lineares com suas respectivas coleções de dados.
Orgulho e Esperança Terremoto A F
(2015) BRRip ... de San Andre
A correta associação entre os elementos das duas tabelas é:
O Exterminador do A Ameaça (201
Futuro: Gênesi ... BRRip BluRay
a1, b1, c2, d1
a1, b2, c1, d1.
a1, b1, c2, d2.
a2, b2, c1, d2.
a2, b1, c2, d1.
Gabarito Comentado.
2a Questão (Ref.: 201503616401) 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.
Proteção de memória, transferência de dados, estruturas simples.
Compartilhamento de memória, maleabilidade e facilidade para inserção e remoção de componentes.
http://simulado.estacio.br/bdq_simulados_ead_ens_preview.asp?cript_hist=7743144510 1/4
30/09/2015 BDQ Prova
Transferência de dados, gerenciamento de memória e procedimentos menos intuitivos.
Previsão de espaço físico, estruturas complexas, procedimentos menos intuitivos.
Acesso, representação, compartilhamento de memória.
Gabarito Comentado.
3a Questão (Ref.: 201503616417) Pontos: 1,0 / 1,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 valor.
Registro.
Passagem por valor.
Envio de inteiro.
Ponteiros.
Gabarito Comentado.
4a Questão (Ref.: 201504229938) Pontos: 1,0 / 1,0
Blocos únicos de códigos que realizam diversas tarefas distintas são de difícil manutenção. Portanto, utilizase a
técnica da modularização de programas, a fim de facilitar a implementação e a manutenção dos programas.
Esta técnica tem como principal elemento:
As Filas
As funções
As Estruturas de Dados
Os Vetores
Os Grafos
5a Questão (Ref.: 201504287982) Pontos: 1,0 / 1,0
Marque a opção correta, considerando
struct Livro {
int codigo;
float preco;
} liv;
Livro>liv.codigo = 12345;
Livro.liv.codigo = 12345;
liv>preco = 30.70;
liv.preco = 30.70;
Livro.codigo = 12345;
http://simulado.estacio.br/bdq_simulados_ead_ens_preview.asp?cript_hist=7743144510 2/4
30/09/2015 BDQ Prova
6a Questão (Ref.: 201504229943) Pontos: 1,0 / 1,0
Podese definir uma estrutura heterogênea como sendo um conjunto de elementos, geralmente, agrupados sob
uma lógica e associados por um nome.
Esses elementos podem ser variáveis simples, matrizes ou ainda outras estruturas. Seja a definição de uma
estrutura como:
struct aluno {
string nome;
float nota;
};
Suponha ainda que exista um vetor desta estrutura, definido como:
aluno vet [100];
Marque a alternativa em que é atribuída de forma correta a nota 5.7 para o décimo primeiro elemento deste
vetor.
vet[10].aluno.nota=5.7 ;
aluno.vet[10]=5.7;
aluno.vet[10].nota=5.7;
vet[10].nota=5.7;
vet[10]=aluno.5.7;
7a Questão (Ref.: 201504204685) Pontos: 1,0 / 1,0
Analisando o trecho de código a seguir:
inicio=0;
fim= tamanho 1;
meio=(inicio+fim)/2;
while(procura != nomeVetor[meio] && inicio != fim)
{
if(procura > nomeVetor[meio])
inicio=meio+1;
else
fim=meio;
meio=(inicio+fim)/2;
}
if(nomeVetor[meio]==procura)
cout<<"\n....: "< < outroVetor[meio]<else
cout<<"\nDado nao encontrado\n";
Podese afirmar que:
tratase da implementação do algortimo de ordenação por inserção.
tratase da implementação do algortimo de busca sequencial
tratase da implementação do algortimo de busca binária.
tratase da implementação do algortimo de ordenação bolha.
tratase da implementação do algortimo de ordenação por seleção.
8a Questão (Ref.: 201503616390) Pontos: 1,0 / 1,0
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.
Seleção
Hash
Bolha
Binária
http://simulado.estacio.br/bdq_simulados_ead_ens_preview.asp?cript_hist=7743144510 3/4
30/09/2015 BDQ Prova
Inserção
Gabarito Comentado.
9a Questão (Ref.: 201504263927) Pontos: 1,0 / 1,0
Considere uma lista com n livros, em que cada livro é modelado pela struct :
struct Livro {
string titulo, editora, autor;
float preco;
};
A função X abaixo
void X (Livro v[ ], int &n, Livro L)
{
v[n] = L;
n++;
cout << "Operação realizada com sucesso.";
}
implementa a operação de :
Inicialização
Substituição
Ordenação por inserção
Inserção
Busca
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
Matriz
Registro
Vetor
Função
Gabarito Comentado.
http://simulado.estacio.br/bdq_simulados_ead_ens_preview.asp?cript_hist=7743144510 4/4
Avaliação: CCT0260_AV_ » ESTRUTURA DE DADOS
Tipo de Avaliação: AV
Aluno
Professor: JANE TAVARES ALVAREZ DA SILVA Turma: 9004/AD
Nota da Prova: 6,5 Nota de Partic.: 2 Av. Parcial 2 Data: 14/06/2016 15:35:10
Defina um tipo de dado (registro) capaz de armazenar as seguintes informações sobre um determinado cliente
de um banco: nome, CPF, RG, número da conta, data de abertura da conta, e saldo.
Com base neste tipo de dado, construa o trecho código em C++ que represente a leitura dos dados do cliente
feita pelo usuário.
Resposta:
Gabarito:
struct ClienteBanco{
string nome;
string cpf;
int rg;
int numConta;
double saldo;
};
ClienteBanco cliente;
Em relação a filas e pilhas dinâmicas, cite uma das vantagens de se implementar estruturas dinamicamente.
Resposta: Estruturas dinamicas tem a avantagem de fazer alocação de memoria em tempo de compilação e
terem seu tamanho alterado comforme a demanda. O sistema não para por falta de alocação de memoria.
Gabarito: É o fato destas estruturas ocuparem espaço estritamente necessário.
Observe a struct, definida globalmente, e um trecho de uma função que manipula
Simulado http://simulado.estacio.br/bdq_simulados_ead_ens.asp?cod_disc=CC...
Lupa
CCT0260_SM_201408383462 V.1
» 26:58 de 50 min. FINALIZAR
quinta-feira, 4 de agosto de 2016 (19:00)
1. Preciso cadastrar todos os interessados em meu novo curso de programação. Qual a estrutura de dados Quest.: 1
mais adequada para modelar este problema, visto que não há qualquer preocupação com ordem de
chegada ou saída de aluno da turma.
Lista
Fila
Pilha
Grafo
Árvore
2. As estruturas de dados são importantes para a programação porque facilitam a pesquisa, pois permitem a Quest.: 2
ordenação dos dados de forma crescente ou decrescente. Dessa forma, assinale a alternativa correta que
define um tipo de dado estruturado.
3. Uma função possui um valor de retorno inteiro, recebe por valor um inteiro como primeiro parâmetro e por Quest.: 3
referência um inteiro como segundo parâmetro. Qual das respostas abaixo poderia representar o protótipo
dessa função:
void dobro(int x) {
x = 10 * x;
Qual será o valor impresso na tela quando o programa principal for executado?
int main() {
int n;
n = 5;
dobro(n);
cout << n;
return 0;
1 de 4 04/08/2016 19:23
Simulado http://simulado.estacio.br/bdq_simulados_ead_ens.asp?cod_disc=CC...
50
10
Haverá um erro de compilação
5
0
5. Pode-se definir uma estrutura heterogênea como sendo um conjunto de elementos, geralmente, agrupados Quest.: 5
sob uma lógica e associados por um nome.
Esses elementos podem ser variáveis simples, matrizes ou ainda outras estruturas. Seja a definição de uma
estrutura como:
struct aluno {
string nome;
float nota;
};
Marque a alternativa em que é atribuída de forma correta a nota 5.7 para o décimo primeiro elemento deste
vetor.
vet[10]=aluno.5.7;
aluno.vet[10].nota=5.7;
vet[10].aluno.nota=5.7 ;
vet[10].nota=5.7;
aluno.vet[10]=5.7;
6. Pode-se definir uma estrutura heterogênea como sendo um conjunto de elementos, geralmente, Quest.: 6
agrupados sob uma lógica e associados por um nome.
Esses elementos podem ser variáveis simples, matrizes ou ainda outras estruturas. Seja a definição
de uma estrutura como:
struct aluno {
string nome;
float nota;
};
Marque a alternativa em que é atribuída de forma correta a nota 5.7 para o décimo primeiro
elemento deste vetor.
vet[10].nota=5.7;
aluno.vet[10].nota=5.7;
vet[10].aluno.nota=5.7 ;
aluno.vet[10]=5.7;
vet[10]=aluno.5.7;
2 de 4 04/08/2016 19:23
Simulado http://simulado.estacio.br/bdq_simulados_ead_ens.asp?cod_disc=CC...
8. Entre os diversos algoritmos de pesquisa existentes, certamente os mais famosos são os da Quest.: 8
pesquisa sequencial e o da pesquisa binária. A busca ou pesquisa sequencial pode ser aplicada em
vetores independente destes estarem ordenados, entretanto a busca binária só se aplica em
vetores ordenados.
Seja o vetor A= {10,35,41,55,69,70,98}, suponha que o número 70 foi pesquisado pelo algoritmo
da busca sequencial e também pelo algoritmo da busca binária, ambos algoritmos realizam testes
nos elementos do vetor até achar o que procuram ou definirem que o elemento não se encontra no
vetor. Sendo assim marque a alternativa que expressa o número de testes realizados pela busca
sequencial e o número de testes realizados pela busca binária, respectivamente, até encontrarem o
70.
6e1
7e1
6e2
6e4
5e5
9. Considere uma lista com n livros, em que cada livro é modelado pela struct : Quest.: 9
struct Livro {
string &tulo, editora, autor;
float preco;
};
A função X abaixo
implementa a operação de :
Inicialização
Subs&tuição
Inserção
Busca
Ordenação por inserção
10. Quest.: 10
3 de 4 04/08/2016 19:23
Simulado http://simulado.estacio.br/bdq_simulados_ead_ens.asp?cod_disc=CC...
FINALIZAR O SIMULADO
4 de 4 04/08/2016 19:23
Professor: JANE TAVARES ALVAREZ DA SILVA Turma: 9002/AA
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:
Existem vários tipos de estruturas de dados do tipo dinâmicas, entretanto, uma estrutura considerada simples
são as listas. Pode-se implementar vários tipos de listas, entretanto, a estrutura que apresenta o conceito de
LIFO é:
Ponteiro
Struct
Pilha
Matriz
Fila
Resposta: a logica FIFO (first in first out) implementada em listas do tipo FILA é logica onde o primeiro
elemento a entrar na lista é o primeiro a sair.
Uma estrutura de dados em lista duplamente encadeada permite na cadeia movimentos para:
Loop
Registro
Vetor
Pilha
Fila
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 de cadeias
pesquisa cadeias indexada
pesquisa sequencial
pesquisa indexada
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 */
Uma fila duplamente terminada, isto é, uma estrutura linear que permite inserir e remover de ambos os
extremos é chamada de:
Autômato.
Árvore.
Shift-and.
Boyer-Moore.
Deque.
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?
FIFO
TABLE
RECORD
LIFO
ARRAY
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;
};
Fila
Matriz
Pilha
Lista duplamente encadeada
Lista encadeada
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?
4
5
7
1
6
01/07/2016 Estácio
Fechar
Avaliação: CCT0260_AV_201408074389 » ESTRUTURA DE DADOS
Tipo de Avaliação: AV
Aluno: 201408074389 JOERBETH CARVALHO OLIVEIRA
Professor: SERGIO DE OLIVEIRA SANTOS Turma: 9006/AA
Nota da Prova: 6,0 Nota de Partic.: 0,5 Av. Parcial 0 Data: 09/06/2016 11:30:37
1a Questão (Ref.: 201408786870) Pontos: 0,0 / 1,0
Em relação a estrutura de dados, o que caracteriza uma lista encadeada?
Resposta: UMA MELHOR PERFORMANCE NA PESQUISA E INSTRUTURAÇÃO, AS PESQUISAS SÃO FEITAS PARA
FRENTE E PARA TRÁS
Gabarito: Não ter seus nós, obrigatoriamente, alocados de forma contígua.
2a Questão (Ref.: 201408786867) Pontos: 1,0 / 1,0
Em relação a filas e pilhas dinâmicas, cite uma das vantagens de se implementar estruturas dinamicamente.
Resposta: FILAS : SÃO ESTRUTURAS QUE RECUPERAM OS DADOS NA ORDEM DIRETAS QUE ESTES FORAM
ARMAZENADOS PILHAS : SÃO ESTRUTURAS QUE RECUPERAM OS DADOS NA ORDEM REVERSA EM QUE ESTES
FORAM ARMAZENADOS
Gabarito: É o fato destas estruturas ocuparem espaço estritamente necessário.
3a Questão (Ref.: 201408348967) Pontos: 1,0 / 1,0
Na maioria dos sistemas operacionais, os arquivos são organizados hierarquicamente em um esquema de
diretórios (pastas) e subdiretórios. Qual a estrutura mais adequada para representar este problema ?
fila
árvore
grafo
pilha
lista
4a Questão (Ref.: 201408109974) Pontos: 1,0 / 1,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:
http://bquestoes.estacio.br/entrada.asp?p0=5718195&p1=201408074389&p2=2077403&p3=CCT0260&p4=102366&p5=AV&p6=09/06/2016&p10=43942086 1/3
01/07/2016 Estácio
Ponteiros.
Passagem por valor.
Envio de inteiro.
Envio de valor.
Registro.
5a Questão (Ref.: 201408781539) Pontos: 1,0 / 1,0
Marque a opção correta, considerando
struct Livro {
int codigo;
float preco;
} liv;
Livro.codigo = 12345;
liv.preco = 30.70;
Livro.liv.codigo = 12345;
liv>preco = 30.70;
Livro>liv.codigo = 12345;
6a Questão (Ref.: 201408109761) Pontos: 0,0 / 1,0
Sobre o funcionamento da busca binária, é correto afirmar que dividindo seu vetor em duas metades.
Se o item for menor que o 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.
Se o item for igual ao item que está na metade do vetor, o item foi encontrado.
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 menor que o item que está na metade do vetor, procure na segunda metade, ou seja, a da
direita.
7a Questão (Ref.: 201408673665) Pontos: 0,5 / 0,5
__________________________ é uma lista linear em que a alocação de memória pode ser estática, e que a
forma de armazenamento é contígua ou sequencial na memória. Usamos este tipo de lista quando se tem em
mente um tamanho prédefinido, ou seja, quando se sabe até onde a lista pode crescer.
Lista Não Linear
Lista Linear Não Alocada
Lista Linear de Alocação de Memória
Lista Linear Sequencial
Lista Linear Não Sequencial
8a Questão (Ref.: 201408347813) Pontos: 0,5 / 0,5
Na pequena pizzaria de Dom Leopoldo os pedidos são anotados em uma planilha e assim que montam um lote
com 5 pizzas, as entregas começam. As pizzas são organizadas no veículo de entrega respeitando a ordem da
entrega, ou seja, a 1a. pizza a ser entregue fica na frente de todas e assim, sucessivamente. Dessa forma, a
última pizza a ser entregue ficará no final do veículo, após todas as outras pizzas. Qual a estrutura de dados é
mais adequada para modelar a organização das pizzas no veículo de entrega ?
fila
http://bquestoes.estacio.br/entrada.asp?p0=5718195&p1=201408074389&p2=2077403&p3=CCT0260&p4=102366&p5=AV&p6=09/06/2016&p10=43942086 2/3
01/07/2016 Estácio
grafo
pilha
árvore
lista
9a Questão (Ref.: 201408679803) Pontos: 0,5 / 0,5
A linguagem C++ oferece quatro meios de criação de tipos de dados: matrizes, estruturas ou structs, uniões e
classes. As estruturas, que passaremos a chamar simplesmente de structs, são tipos de variáveis que agrupam
dados geralmente desiguais, enquanto matrizes são variáveis que agrupam dados similares. Devido a esta
característica as structs são utilizadas para modelar nodos (nós) de estruturas dinâmicas. Portanto podemos
afirmar que:
As estruturas dinâmicas são assim chamadas, pois podem fazer alocação de memória em tempo de
execução e terem seus tamanhos alterados de acordo com a demanda.
As estruturas dinâmicas são assim chamadas, pois podem fazer alocação de memória em tanto em
tempo de execução quanto em tempo de compilação, mas não podem ter seus tamanhos alterados de
acordo com a demanda.
As estruturas dinâmicas são assim chamadas, pois podem fazer alocação de memória em tempo de
compilação e terem seus tamanhos alterados de acordo com a demanda.
As estruturas dinâmicas são assim chamadas, pois podem fazer alocação de memória em tempo de
compilação e entretanto seus tamanhos só são alterados na codificação de acordo com a demanda.
As estruturas dinâmicas são assim chamadas, pois não podem fazer alocação de memória em tempo de
execução, mas mesmo assim conseguem ter seus tamanhos alterados de acordo com a demanda.
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 dados, marque a alternativa
correta.
struct nomeRegistro{
int info;
struct nomeRegistro* ant;
struct nomeRegistro* prox;
};
typedef struct nomeRegistro NOMEREGISTRO;
Lista encadeada
Fila
Matriz
Pilha
Lista duplamente encadeada
http://bquestoes.estacio.br/entrada.asp?p0=5718195&p1=201408074389&p2=2077403&p3=CCT0260&p4=102366&p5=AV&p6=09/06/2016&p10=43942086 3/3
SIMULADO ESTRUTURA DE DADOS -1 a ( aula 1 a 5)
Considere uma estrutura de dados do tipo vetor. Com respeito a tal estrutura, é correto que seus componentes
são caracteristicamente:
Gabarito Comentado.
II e V são verdadeiras
II E IV são verdadeiras
I e V são verdadeiras
I , II e IV são verdadeiras
III e V são verdadeiras
Gabarito Comentado.
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.
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 primeiro í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.
Gabarito Comentado.
É 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 ......
por comparação.
binária.
linear.
por contagem.
randômica.
Gabarito Comentado.
Assinale a alternativa que apresenta duas formas de passagem de parâmetros para uma rotina ou função:
Gabarito Comentado.
7a Questão (Ref.: 201102388878) Pontos: 1,0 / 1,0
pilha
árvore
lista
grafo
fila
Gabarito Comentado.
Gabarito Comentado.
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: void addFinalLista ( TipoLista &lista, int dado ) { if(lista.qtde == TAMMAX) { cout << "Lista
Cheia."; } else{ lista.elemt[lista.qtde] = dado; lista.qtde++; cout << "Dado adicionado com sucesso."; } }
lista.qtde++;
}}
Sua Resposta: O Primeiro que entra na pilha é o ultimo a sair. Assim como o Ultimo que entra é o Primeiro que
sai. Last in, First out . Exemplo pilha de alter, onde o ultimo peso colocado será o primeiro a ser retirado.
Compare com a sua resposta: O primeiro que entra na pilha é o último que sai.
fila
pilha
lista
árvore
grafo
Gabarito Comentado.
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:
Gabarito Comentado.
Preciso cadastrar todos os interessados em meu novo curso de programação. Qual a estrutura de dados mais
adequada para modelar este problema, visto que não há qualquer preocupação com ordem de chegada ou saída de
aluno da turma.
Fila
Lista
Pilha
Grafo
Árvore
O que acontece ao se inserir uma informação quando já usamos toda a área disponível do vetor (topo = fim)?
ordenação
inclusão
overflow
underflow
remoção
Gabarito Comentado.
A estrutura de dados linear que obedece o seguinte critério: o último elemento inserido será o primeiro
elemento a ser retirado (LIFO) é:
fila.
árvore AVL.
árvore binária.
pilha.
lista circular.
Gabarito Comentado.
Gabarito Comentado.
As estruturas de dados são utilizadas para manter dados ou informações organizados na memória, o que
possibilita a otimização do uso destes dados. Porém, as estruturas guardam características especiais na
manipulação destes dados, assim deve-se escolher a estrutura certa ou mais adequada para uma determinada
aplicação. Portanto marque a opção que representa a melhor estrutura, quando se tem como requisitos
principais o acesso aleatório aos dados e alocação destes de forma contínua na memória.
Fila Sequencial
Lista Sequencial
Lista Encadeada
Pilha Encadeada
Pilha Sequencial
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 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.
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.
Gabarito Comentado.
Sua Resposta: Primeiro que entra é o primeiro a sair. exemplo fila do banco o primeiro que entra é o primeiro a
ser atendido.
Compare com a sua resposta: O primeiro que entra na fila é o primeiro que sai.
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).
Sua Resposta: bool intersecao(int v[], int w[], int inter[], int nv , int nw , int &n) { bool achou = false; for (int i
= 0; i < nv; i++) for (int j = 0; j < nw; j++) if (v[i] == w[j]) { inter[n] = v[i]; achou = true; n++; } return
achou; }
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;
SIMULADO 3 ( aula 1 a 5)
Gabarito Comentado.
Entre os diversos algoritmos de pesquisa existentes, certamente os mais famosos são os da pesquisa
sequencial e o da pesquisa binária. A busca ou pesquisa sequencial pode ser aplicada em vetores
independente destes estarem ordenados, entretanto a busca binária só se aplica em vetores ordenados.
Seja o vetor A= {10,35,41,55,69,70,98}, suponha que o número 70 foi pesquisado pelo algoritmo da
busca sequencial e também pelo algoritmo da busca binária, ambos algoritmos realizam testes nos
elementos do vetor até achar o que procuram ou definirem que o elemento não se encontra no vetor.
Sendo assim marque a alternativa que expressa o número de testes realizados pela busca sequencial e
o número de testes realizados pela busca binária, respectivamente, até encontrarem o 70.
5e5
6e2
6e4
7e1
6e1
Gabarito Comentado.
Quando as inserções e as remoções ocorrem sempre no mesmo lado da lista, trata-se de uma estrutura de
dados denominada.
Pilha.
Lista encadeada.
Lista circular.
Fila.
Vetor.
Gabarito Comentado.
4a Questão (Ref.: 201102149833) 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?
Gabarito Comentado.
Entre os diversos algoritmos de pesquisa existentes, certamente os mais famosos são os da pesquisa sequencial
e o da pesquisa binária. A busca ou pesquisa sequencial pode ser aplicada em vetores independente destes
estarem ordenados, entretanto a busca binária só se aplica em vetores ordenados. Seja o vetor A=
{10,35,41,55,69,70,98}, suponha que o número 70 foi pesquisado pelo algoritmo da busca sequencial e
também pelo algoritmo da busca binária, ambos algoritmos realizam testes nos elementos do vetor até achar o
que procuram ou definirem que o elemento não se encontra no vetor. Sendo assim marque a alternativa que
expressa o número de testes realizados pela busca sequencial e o número de testes realizados pela busca
binária, respectivamente, até encontrarem o 70.
7e1
5e5
6e1
6e2
6e4
Considere uma lista não ordenada de códigos espiões usados por Sherlock Silva. Ajude-o a
encontrar um determinado código c, realizando uma busca de acordo com o seguinte
protótipo:
int pesquisar(int v[ ], int c, int n);
Note : v é o vetor de códigos, c é o código a ser procurado e n é a quantidade de códigos
existentes em v.
Sua Resposta: bool intersecao(int v[], int c, int &n) { bool achou = false; for (int i = 0; i < v; i++) for (int j = 0; j <
v; j++) if (v[i] == n[j]) { inter[n] = v[i]; achou = true; n++; } return achou; }
Compare com a sua resposta:
7a Questão (Ref.: 201102149767) Pontos: 1,0 / 1,0
Analise o seguinte trecho de algoritmo de ordenação de dados, cujos elementos estão dispostos em um vetor de
nome v com n elementos.
...
int i, j, aux;
aux = v[i-1];
v[i-1] = v[i];
v[i] = aux;
...
Heapsort
Bolha
Seleção
Inserção
Quicksort
Gabarito Comentado.
Gabarito Comentado.
Compare com a sua resposta: O primeiro que entra na fila é o primeiro que sai.
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.
I, III e V.
II, IV e V.
II, III, IV e V.
I, III, IV e V.
Gabarito Comentado.
A linguagem C++ oferece quatro meios de criação de tipos de dados: matrizes, estruturas ou structs, uniões e
classes. As estruturas, que passaremos a chamar simplesmente de structs, são tipos de variáveis que agrupam
dados geralmente desiguais, enquanto matrizes são variáveis que agrupam dados similares. Devido a esta
característica as structs são utilizadas para modelar nodos (nós) de estruturas dinâmicas. Portanto podemos
afirmar que:
As estruturas dinâmicas são assim chamadas, pois não podem fazer alocação de memória em tempo de
execução, mas mesmo assim conseguem ter seus tamanhos alterados de acordo com a demanda.
As estruturas dinâmicas são assim chamadas, pois podem fazer alocação de memória em tanto em
tempo de execução quanto em tempo de compilação, mas não podem ter seus tamanhos alterados de
acordo com a demanda.
As estruturas dinâmicas são assim chamadas, pois podem fazer alocação de memória em tempo de
compilação e entretanto seus tamanhos só são alterados na codificação de acordo com a demanda.
As estruturas dinâmicas são assim chamadas, pois podem fazer alocação de memória em tempo de
execução e terem seus tamanhos alterados de acordo com a demanda.
As estruturas dinâmicas são assim chamadas, pois podem fazer alocação de memória em tempo de
compilação e terem seus tamanhos alterados de acordo com a demanda.
Abaixo temos algumas afirmativas sobre o uso da estrutura pilha de forma estática e sequencial. Leia com
muita atenção e assinale a opção correta.
I Não existe movimentação na pilha quando inserimos ou removemos um elemento. Apenas o valor da
variável que controla o topo é alterado.
II Não podemos usar estruturas homogêneas, ou heterogêneas e uma variável para controlar o topo na
alocação sequencial.
III Um dos fatores que limita o crescimento da pilha é a quantidade de memória alocada quando usamos
matrizes.
IV Quando formos empilhar um elemento, é preciso verificar se a pilha não está cheia. Isso evita underflow.
V Quando formos desempilhar um elemento, é preciso verificar se a pilha não está vazia. Isso evita overflow.
I, IV e V estão corretas
II, IV e V estão corretas
I, IV e V estão corretas
I e III estão corretas
Somente a I está correta
Gabarito Comentado.
Gabarito Comentado.
Vazio
Apenas com o dado D
Com os dados A e D
Com os dados A e B
Apenas com o dado A
Gabarito Comentado.
Um aluno do EAD estava estudando para a prova de Estrutura quando viu o trecho
do programa abaixo em uma apostila.
Como não estava com seu micro, começou a analisar a função entra(...), ficando
atento a alguns membros da struct.
Quando finalizou, virou a página da apostila e viu a resposta. Então, ficou muito
feliz por ter identificado a estrutura
Pilha
Fila
Fila Circular
Lista Linear
Lista simplesmente encadeada
Gabarito Comentado.
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 decrescente
Ordem crescente
Primeiro que entra é o primeiro a sair
Posições aleatórias
Ordem de entrada
Gabarito Comentado.
Montei uma biblioteca popular que aceita doações sem limites. Marque a opção que especifica o tipo de lista e o
tipo de alocação de memória mais adequados para este problema.
Gabarito Comentado.
9 100 200
100 9 200
200 9 100
100 100 200
9 9 200
A partir do struct abaixo, crie uma função em C++ (somente o trecho da função) para remover um
elemento inteiro no fim da fila.
Sua Resposta: tfila* retira (tfila* l, int v) { tfila* ant = NULL; tfila* p = l;
Uma fila é também uma lista linear, mas para esta estrutura as inserções só podem ser efetuadas
em um extremo da lista, e todas as retiradas (e geralmente os acessos) são realizados no outro
extremo da lista.
A partir do struct abaixo, crie uma função em C++ (somente o trecho da função) para inserir um
elemento inteiro no fim da fila.
Sua Resposta: tfila* insere (tfila* l, int F) { tfila* novo = (tfila*) malloc(sizeof(tfila)); novo->info = F; novo-
>prox = R; return novo; }
Considere uma fila simples F de inteiros, do tipo Fila definido abaixo. Tal fila deverá armazenar códigos de agentes de uma
firma de espionagem, desde que haja espaço para um novo agente. Assinale a opção que corretamente desenfileira o código
de um agente, sabendo que a fila F foi inicializada de acordo com o trecho de código abaixo.
Fila F;
F. inicio = 0;
F.fim = -1;
void desenfileirar(Fila F) {
F.inicio--;
else {
F.inicio++;
void desenfileirar(Fila F) {
if (F.inicio > F.fim)
else {
F.inicio++;
else {
}
void desenfileirar(Fila &F) {
else {
F.inicio++;
Tenho uma lista encadeada de processos para ler e despachar, mas obedeço a ordem de chegada, ou seja,
o primeiro processo que chega é o primeiro processo a ser atendido por mim. Sabendo que cada processo
é do tipo Processo, previamente definido e que a lista é do tipo Lista, assinale a opção que corretamente
implementa a retirada de um processo da lista, que pode ter um ou mais processos.
struct Lista {
Processo p;
};
Lista retirar(Lista *p)
Lista *aux = p;
p = p->link;
return p;
Lista *aux = p;
p = p->link;
p->link = NULL;
return p;
Lista *aux = p;
p = p->link;
delete aux;
return p;
delete p;
p = p->link;
return p;
Lista *aux = p;
p = p->link;
delete p->link;
p->link = NULL;
return p;
}
Gabarito Comentado.
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
Vetor
Ponteiro
Endereço
Variável
Gabarito Comentado.
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. Considerando 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.
( ) Com apontadores, é possível criar funções que retornem estruturas de dados complexas.
( ) Para recuperar o valor da variável apontada, basta que o apontador seja atribuído a uma variável de mesmo
tipo.
( ) 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.
a) E - C - E - C - E
e) C - E - C - E - C
b) C - C - E - E - E
c) E - E - C - C - E
d) E - C - E - C - C
Gabarito Comentado.
Usa-se um vetor para se implementar uma fila sequencial, entretanto se nesta estrutura ocorrer diversas
operações de remoção e inserção podemos afirmar que:
Um vetor não pode ser usado na implementação de uma fila sequencial apenas em pilhas sequenciais.
Um vetor é uma estrutura base correta para esta implementação, já que está imune a fenômenos como
esgotamento de memória.
A estrutura fila não sofre esgotamento de memória, isto ocorre com as pilhas já que implementam o
algoritmo LIFO.
A estrutra sofrerá do fenômeno chamado esgotamento de memória e logo não poderá mais ser utilizada.
A solução é o uso da fila circular.
A estrutra sofrerá do fenômeno esgotamento de memória, mas se os dados estiverem ordenados isto
não afetará a estrutura.
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?
Gabarito Comentado.
O que acontece quando se deseja inserir um elemento em uma FILA que já está cheia?
Overflow.
Underflow.
A inserção é feita sem problema.
Dequeue.
Enqueue.
Gabarito Comentado.
9a Questão (Ref.: 201102792853)
Desenvolva uma função em C++ para construir uma fila Q com valores inteiros positivos, inseridos a partir do
teclado.
Sua Resposta: #include <stdio.h> #include <stdlib.h> struct Node{ int num; struct Node *prox; }; typedef
struct Node node; int tam; int menu(void); void opcao(node *FILA, int op); void inicia(node *FILA); int
vazia(node *FILA); node *aloca(); void insere(node *FILA); node *retira(node *FILA); void exibe(node *FILA);
void libera(node *FILA); int main(void) { node *FILA = (node *) malloc(sizeof(node)); if(!FILA){ printf("Sem
memoria disponivel!\n"); exit(1); }else{ inicia(FILA); int opt; do{ opt=menu(); opcao(FILA,opt); }while(opt);
free(FILA); return 0; } } int menu(void) { int opt; printf("Escolha a opcao\n"); printf("0. Sair\n"); printf("1.
Zerar fila\n"); printf("2. Exibir fila\n"); printf("3. Adicionar Elemento na Fila\n"); printf("4. Retirar Elemento da
Fila\n"); printf("Opcao: "); scanf("%d", &opt); return opt; } void opcao(node *FILA, int op) { node *tmp;
switch(op){ case 0: libera(FILA); break; case 1: libera(FILA); inicia(FILA); break; case 2: exibe(FILA); break;
case 3: insere(FILA); break; case 4: tmp= retira(FILA); if(tmp != NULL){ printf("Retirado: %3d\n\n", tmp-
>num); libera(tmp); } break; default: printf("Comando invalido\n\n"); } } void inicia(node *FILA) { FILA->prox
= NULL; tam=0; } int vazia(node *FILA) { if(FILA->prox == NULL) return 1; else return 0; } node *aloca() {
node *novo=(node *) malloc(sizeof(node)); if(!novo){ printf("Sem memoria disponivel!\n"); exit(1); }else{
printf("Novo elemento: "); scanf("%d", &novo->num); return novo; } } void insere(node *FILA) { node
*novo=aloca(); novo->prox = NULL; if(vazia(FILA)) FILA->prox=novo; else{ node *tmp = FILA->prox;
while(tmp->prox != NULL) tmp = tmp->prox; tmp->prox = novo; } tam++; } node *retira(node *FILA) {
if(FILA->prox == NULL){ printf("Fila ja esta vazia\n"); return NULL; }else{ node *tmp = FILA->prox; FILA-
>prox = tmp->prox; tam--; return tmp; } } void exibe(node *FILA) { if(vazia(FILA)){ printf("Fila vazia!\n\n");
return ; } node *tmp; tmp = FILA->prox; printf("Fila :"); while( tmp != NULL){ printf("%5d", tmp->num); tmp
= tmp->prox; } printf("\n "); int count; for(count=0 ; count < tam ; count++) printf(" ^ ");
printf("\nOrdem:"); for(count=0 ; count < tam ; count++) printf("%5d", count+1); printf("\n\n"); } void
libera(node *FILA) { if(!vazia(FILA)){ node *proxNode, *atual; atual = FILA->prox; while(atual != NULL){
proxNode = atual->prox; free(atual); atual = proxNode; } } }
PNodo ConstruirFila () {
int X;
PNodo Q;
Q = Criar();
cin>>X;
while (X > 0) {
Q = Juntar(X, Q);
cin>>X;
return Q;
Sua Resposta: #include <stdio.h>#include <stdlib.h>struct Node{ int num; struct Node *prox;};typedef struct
Node node;int tam;int menu(void);void opcao(node *FILA, int op);void inicia(node *FILA);int vazia(node
*FILA);node *aloca();void insere(node *FILA);node *retira(node *FILA);void exibe(node *FILA);void
libera(node *FILA);int main(void){ node *FILA = (node *) malloc(sizeof(node)); if(!FILA){ printf("Sem memoria
disponivel!\n"); exit(1); }else{ inicia(FILA); int opt; do{ opt=menu(); opcao(FILA,opt); }while(opt); free(FILA);
return 0; }}int menu(void){ int opt; printf("Escolha a opcao\n"); printf("0. Sair\n"); printf("1. Zerar fila\n");
printf("2. Exibir fila\n"); printf("3. Adicionar Elemento na Fila\n"); printf("4. Retirar Elemento da Fila\n");
printf("Opcao: "); scanf("%d", &opt); return opt;}void opcao(node *FILA, int op){ node *tmp; switch(op){ case
0: libera(FILA); break; case 1: libera(FILA); inicia(FILA); break; case 2: exibe(FILA); break; case 3:
insere(FILA); break; case 4: tmp= retira(FILA); if(tmp != NULL){ printf("Retirado: %3d\n\n", tmp->num);
libera(tmp); } break; default: printf("Comando invalido\n\n"); }}void inicia(node *FILA){ FILA->prox = NULL;
tam=0;}int vazia(node *FILA){ if(FILA->prox == NULL) return 1; else return 0;}node *aloca(){ node
*novo=(node *) malloc(sizeof(node)); if(!novo){ printf("Sem memoria disponivel!\n"); exit(1); }else{
printf("Novo elemento: "); scanf("%d", &novo->num); return novo; }}void insere(node *FILA){ node
*novo=aloca(); novo->prox = NULL; if(vazia(FILA)) FILA->prox=novo; else{ node *tmp = FILA->prox;
while(tmp->prox != NULL) tmp = tmp->prox; tmp->prox = novo; } tam++;}node *retira(node *FILA){
if(FILA->prox == NULL){ printf("Fila ja esta vazia\n"); return NULL; }else{ node *tmp = FILA->prox; FILA-
>prox = tmp->prox; tam--; return tmp; }}void exibe(node *FILA){ if(vazia(FILA)){ printf("Fila vazia!\n\n");
return ; } node *tmp; tmp = FILA->prox; printf("Fila :"); while( tmp != NULL){ printf("%5d", tmp->num); tmp
= tmp->prox; } printf("\n "); int count; for(count=0 ; count < tam ; count++) printf(" ^ ");
printf("\nOrdem:"); for(count=0 ; count < tam ; count++) printf("%5d", count+1); printf("\n\n");}void
libera(node *FILA){ if(!vazia(FILA)){ node *proxNode, *atual; atual = FILA->prox; while(atual != NULL){
proxNode = atual->prox; free(atual); atual = proxNode; } }}
SIMULADO 2 c ( AULA 6 a 10 )
Na pequena mercearia do Sr. Manuel os pedidos são anotados no papel e assim que montam um lote com 10
listas de compras dos fregueses, as entregas começam. As compras de cada freguês são postas em uma caixa.
As caixas são organizadas no veículo de entrega respeitando a ordem da entrega, ou seja, a 1a. caixa a ser
entregue fica na frente das demais caixas e assim, sucessivamente. Dessa forma, a última caixa a ser entregue
ficará no final do veículo, após todas as outras caixas que deverão ser entregues primeiro. Qual a estrutura de
dados mais adequada que traduz a organização das pizzas no veículo de entrega ?
fila
lista
árvore
pilha
grafo
Gabarito Comentado.
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:
As estruturas de dados podem ser do tipo estática e dinâmica. As listas são estruturas parecidas com vetores
podendo ser do tipo dinâmica. Entretanto, existem várias implementações de estruturas do tipo listas. Dessa
forma, a estrutura que para o acesso de um dado, este precisa estar na saída, caso contrário, precisa remover
os elementos a sua frente, é chamada de:
Bolha
Matriz
Struct
Pilha
Fila
Gabarito Comentado.
Observe a função que manipula uma pilha e assuma que TAM é uma constante definida com valor 5. Saiba
que o nome da função já explícita a finalidade dela.
Considere a chamada da função conforme linha abaixo, sabendo-se que vet é um vetor de tamanho 5 e que
não tem nenhum valor ainda:
Analise as afirmativas abaixo que sugerem correções, ou não, na definição na função e assinale a opção
que contem as afirmativas corretas.
Gabarito Comentado.
Um jogo de memória fornece sequências de números e o jogador deve dizer qual a sequência inversa para cada
nova sequência fornecida pelo jogo. Qual a estrutura de dados mais adequada para modelar esse jogo ?
lista
pilha
grafo
fila
árvore
Gabarito Comentado.
Sabe-se que Push() coloca um elemento na pilha, Pop() remove um elemento da pilha e Top() exibe o
elemento que se encontra no topo.
Assinale a opção que indica o número que aparecerá após a execução das funções abaixo.
15
8
23
13
18
Gabarito Comentado.
Na pequena pizzaria de Dom Leopoldo os pedidos são anotados em uma planilha e assim que montam um lote
com 5 pizzas, as entregas começam. As pizzas são organizadas no veículo de entrega respeitando a ordem da
entrega, ou seja, a 1a. pizza a ser entregue fica na frente de todas e assim, sucessivamente. Dessa forma, a
última pizza a ser entregue ficará no final do veículo, após todas as outras pizzas. Qual a estrutura de dados é
mais adequada para modelar a organização das pizzas no veículo de entrega ?
fila
árvore
lista
pilha
grafo
Gabarito Comentado.
8a Questão (Ref.: 201102389710) Pontos: 0,0 / 1,0
Lista
Árvore
Pilha
Grafo
Fila
Gabarito Comentado.
Com base neste tipo de dado, construa o trecho código em C++ que represente a leitura dos dados do cliente
feita pelo usuário.
Sua Resposta: #include using namespace std; struct no { int dado; struct no *link; };
struct ClienteBanco{
string nome;
string cpf;
int rg;
int numConta;
double saldo;
};
ClienteBanco cliente;
Escreva instruções para um programa em C++ a fim de criar uma lista simplesmente encadeada
não circular com o valor 50. Considere
#include
using namespace std;
struct no {
int dado;
struct no *link;
};
int main() {
//As instruções solicitadas farão parte da main
}
Sua Resposta: #include using namespace std; struct no { int dado; struct no *link; }; int main() { //As
instruções solicitadas farão parte da main }
no *p;
p = new no;
p->dado = 50;
p->link = NULL;
BDQ Prova Página 1 de 4
ESTRUTURA DE DADOS
I A estrutura de dados que melhor representa os diretórios ou pastas de arquivos do computador é a árvore.
II A estrutura de dados FILA é não linear assim como o Grafo.
III O termo folha em uma estrutura de dados é usado para um nó sem filhos e que tem grau 0,
IV O grau de uma árvore é definido pelo número de subárvores de um nó.
V O grafo é uma estrutura de dados que tem limitação para o número de vértices.
VI Uma das aplicações da estrutura de dados grafo é a Computação Gráfica.
Gabarito Comentado.
Observe o trecho do programa em C++ abaixo e, após, entrar com os valores sugeridos para sua execução assinale
a alternativa que representa a resposta final.
cin >> a;
cin >> b;
cin >> c;
cin >> d;
cout << a;
cout << b;
cout << c;
cout << d;
cout << d;
cout << c;
cout << b;
cout << a;
Após a impressão dos valores pela ordem teremos uma fila e um grafo.
Após a impressão dos valores pela ordem teremos duas pilhas.
Após a impressão dos valores pela ordem teremos duas filas.
Após a impressão dos valores pela ordem teremos uma pilha e uma fila.
Após a impressão dos valores pela ordem teremos uma fila e uma pilha.
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.
http://simulado.estacio.br/bdq_simulados_ead_ens_preview.asp?cript_hist=1144825620 05/06/2016
BDQ Prova Página 2 de 4
Gabarito Comentado.
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 valor.
Envio de inteiro.
Passagem por valor.
Registro.
Ponteiros.
Gabarito Comentado.
Pode-se definir uma estrutura heterogênea como sendo um conjunto de elementos, geralmente, agrupados sob
uma lógica e associados por um nome.
Esses elementos podem ser variáveis simples, matrizes ou ainda outras estruturas. Seja a definição de uma
estrutura como:
struct aluno {
string nome;
float nota;
};
Marque a alternativa em que é atribuída de forma correta a nota 5.7 para o décimo primeiro elemento deste vetor.
aluno.vet[10].nota=5.7;
vet[10]=aluno.5.7;
vet[10].nota=5.7;
aluno.vet[10]=5.7;
vet[10].aluno.nota=5.7 ;
http://simulado.estacio.br/bdq_simulados_ead_ens_preview.asp?cript_hist=1144825620 05/06/2016
BDQ Prova Página 3 de 4
Vetor
Registro
Pilha
Fila
Loop
Gabarito Comentado.
a
7 Questão (Ref.: 201509179665) Pontos: 1,0 / 1,0
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 aleatoriamente. Pior caso: o elemento está no último í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. Pior caso: o elemento está no último índice do meu
vetor.
Os elementos são pesquisados de acordo com o índice. Melhor caso: o elemento está no último índice do
meu vetor.
Gabarito Comentado.
a
8 Questão (Ref.: 201509179852) Pontos: 1,0 / 1,0
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.
Seleção
Hash
Binária
Inserção
Bolha
Gabarito Comentado.
As estruturas de dados são utilizadas para manter dados ou informações organizados na memória, o que possibilita
a otimização do uso destes dados. Porém, as estruturas guardam características especiais na manipulação destes
dados, assim deve-se escolher a estrutura certa ou mais adequada para uma determinada aplicação. Portanto
marque a opção que representa a melhor estrutura, quando se tem como requisitos principais o acesso aleatório
aos dados e alocação destes de forma contínua na memória.
Lista Encadeada
Fila Sequencial
Lista Sequencial
Pilha Encadeada
Pilha Sequencial
http://simulado.estacio.br/bdq_simulados_ead_ens_preview.asp?cript_hist=1144825620 05/06/2016
BDQ Prova Página 4 de 4
Gabarito Comentado.
a
10 Questão (Ref.: 201509384604) Pontos: 0,0 / 1,0
Gabarito Comentado.
http://simulado.estacio.br/bdq_simulados_ead_ens_preview.asp?cript_hist=1144825620 05/06/2016
11/06/2016 BDQ Prova
ESTRUTURA DE DADOS Lupa
Exercício: CCT0260_EX_A1_201509137939 Matrícula: 201509137939
Aluno(a): MARCELA COSTA DO NASCIMENTO Data: 16/03/2016 09:36:01 (Finalizada)
As estruturas de dados podem ser caracterizadas como sendo uma forma organizada de armazenar
dados ou informações na memória, de modo a otimizar o acesso a estes. Muitas vezes existem
algoritmos de manipulação dados associados a estas estruturas. Verifique as seguintes sentenças:
IFilas são estruturas que recuperam os dados na ordem direta em que estes foram armazenados.
IIAs Pilhas são estruturas que recuperam os dados na ordem reversa em que estes foram
armazenados.
IIIAs Pilhas são estruturas que recuperam os dados na ordem direta em que estes foram
armazenados.
IVAs Filas são estruturas que recuperam os dados na ordem reversa em que estes foram
armazenados.
Marque a alternativa CORRETA:
As alternativas III e IV estão corretas.
As alternativas I e III estão corretas.
As alternativas II e IV estão corretas.
As alternativas I e II estão corretas
Todas as alternativas estão corretas.
Gabarito Comentado
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, expandindose ou contraindose 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.
II, IV e V.
I, II e III.
II, III, IV e V.
I, III e V.
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2330895138 1/3
11/06/2016 BDQ Prova
Gabarito Comentado
Qual estrutura de dados não linear que é utilizada na implementação de Redes de Computadores, na
Computação Gráfica, em modelagem de circuitos digitais e etc. E que se caracteriza por apresentar um conjunto
de nós e conexões entre eles.
Filas Encadeadas
Listas Encadeadas.
Pilhas Encadeadas
Grafos
Vetores
Observe o trecho do programa em C++ abaixo e, após, entrar com os valores sugeridos para sua execução
assinale a alternativa que representa a resposta final.
cin >> a;
cin >> b;
cin >> c;
cin >> d;
cout << a;
cout << b;
cout << c;
cout << d;
cout << d;
cout << c;
cout << b;
cout << a;
Após a impressão dos valores pela ordem teremos uma fila e um grafo.
Após a impressão dos valores pela ordem teremos duas filas.
Após a impressão dos valores pela ordem teremos uma pilha e uma fila.
Após a impressão dos valores pela ordem teremos duas pilhas.
Após a impressão dos valores pela ordem teremos uma fila e uma pilha.
Na maioria dos sistemas operacionais, os arquivos são organizados hierarquicamente em um esquema de
diretórios (pastas) e subdiretórios. Qual a estrutura mais adequada para representar este problema ?
pilha
lista
grafo
fila
árvore
Gabarito Comentado
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2330895138 2/3
11/06/2016 BDQ Prova
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.
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.
Gabarito Comentado
Fechar
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2330895138 3/3
11/06/2016 BDQ Prova
ESTRUTURA DE DADOS Lupa
Exercício: CCT0260_EX_A2_201509137939 Matrícula: 201509137939
Aluno(a): MARCELA COSTA DO NASCIMENTO Data: 24/03/2016 17:36:57 (Finalizada)
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
Inteiro
Real
Constante
Local
Gabarito Comentado
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.
int funcao(float v[], float vl, int n)
{
for (int i = 0; i < n; i++)
if (v[i] == vl)
return i;
return 1;
}
Retorna 1 se o valor de n foi encontrado.
Retorna 1 se o valor de vl estiver dentro de v.
Retorna a posição de v se o valor vl foi encontrado.
Resulta em erro, se o valor de vl não estiver dentro de v.
Retorna o valor de vl se o valor n foi encontrado.
Gabarito Comentado
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
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2366393502 1/3
11/06/2016 BDQ Prova
o mesmo valor.
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".
Em uma função "resul" temse 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.
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.
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.
Gabarito Comentado
Auxiliar = 111 Numero1 = 1000 Numero2 = 80
Auxiliar = 101 Numero1 = 900 Numero2 = 20
Auxiliar = 100 Numero1 = 900 Numero2 = 80
Auxiliar = 100 Numero1 = 1000 Numero2 = 20
Auxiliar = 100 Numero1 = 900 Numero2 = 20
Gabarito Comentado
Blocos únicos de códigos que realizam diversas tarefas distitintas são de dificil manutenção. Portanto, utilizase
a tecnica da modularização de programas, a fim de facilitar a implementação e a manutenção dos programas.
Esta técnica, também chamada de modularização, tem como principal elemento:
As Filas
Os Vetores
As Estruturas de Dados
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2366393502 2/3
11/06/2016 BDQ Prova
Os Grafos
As funções
Uma função possui um valor de retorno inteiro, recebe por valor um inteiro como primeiro parâmetro e por
referência um inteiro como segundo parâmetro. Qual das respostas abaixo poderia representar o protótipo
dessa função:
void func (int a, int &b);
void func (int &a, int &b);
int func (int a, int &b);
int func (&int, int);
int func (int &a, int b);
Gabarito Comentado
Fechar
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2366393502 3/3
11/06/2016 BDQ Prova
ESTRUTURA DE DADOS Lupa
Exercício: CCT0260_EX_A3_201509137939 Matrícula: 201509137939
Aluno(a): MARCELA COSTA DO NASCIMENTO Data: 11/06/2016 20:14:27 (Finalizada)
Podese definir uma estrutura heterogênea como sendo um conjunto de elementos, geralmente,
agrupados sob uma lógica e associados por um nome.
Esses elementos podem ser variáveis simples, matrizes ou ainda outras estruturas. Seja a definição de
uma estrutura como:
struct aluno {
string nome;
float nota;
};
Suponha ainda que exista um vetor desta estrutura, definido como:
aluno vet [ 100];
Marque a alternativa em que é atribuída de forma correta a nota 5.7 para o décimo primeiro elemento
deste vetor.
vet[10]=aluno.5.7;
aluno.vet[10]=5.7;
vet[10].nota=5.7;
vet[10].aluno.nota=5.7 ;
aluno.vet[10].nota=5.7;
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?
Nome da estrutura vírgula tipo do campo
Nome da estrutura ponto tipo do campo
Nome da estrutura seta nome do campo
Nome da estrutura ponto nome do campo
Nome da estrutura seta tipo do campo
Gabarito Comentado
Podese definir uma estrutura heterogênea como sendo um conjunto de elementos, geralmente, agrupados sob
uma lógica e associados por um nome.
Esses elementos podem ser variáveis simples, matrizes ou ainda outras estruturas. Seja a definição de uma
estrutura como:
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2918951970 1/3
11/06/2016 BDQ Prova
struct aluno {
string nome;
float nota;
};
Suponha ainda que exista um vetor desta estrutura, definido como:
aluno vet [100];
Marque a alternativa em que é atribuída de forma correta a nota 5.7 para o décimo primeiro elemento deste
vetor.
aluno.vet[10]=5.7;
aluno.vet[10].nota=5.7;
vet[10]=aluno.5.7;
vet[10].nota=5.7;
vet[10].aluno.nota=5.7 ;
Podese definir uma estrutura heterogênea como sendo um conjunto de elementos, geralmente, agrupados sob
uma lógica e associados por um nome. Esses elementos podem ser variáveis simples, matrizes ou ainda outras
estruturas. Seja a definição de uma estrutura como: struct aluno { string nome; float media; }; Suponha ainda
que exista um vetor desta estrutura, definido como: aluno vet [ 10]; Marque a alternativa em que é atribuída de
forma correta a media 6.0 para o quarto elemento deste vetor.
aluno[3].10=6.0;
aluno[10]=6.0;
vet[3].media=6.0;
aluno[3].media=6.0;
vet[3].aluno=6.0;
Marque a opção correta, considerando
struct Livro {
int codigo;
float preco;
} liv;
liv.preco = 30.70;
Livro.liv.codigo = 12345;
Livro.codigo = 12345;
liv>preco = 30.70;
Livro>liv.codigo = 12345;
Qual das seguintes estruturas de dados é classificada como heterogênea?
Fila
Pilha
Loop
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2918951970 2/3
11/06/2016 BDQ Prova
Vetor
Registro
Gabarito Comentado
Fechar
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2918951970 3/3
11/06/2016 BDQ Prova
ESTRUTURA DE DADOS Lupa
Exercício: CCT0260_EX_A4_201509137939 Matrícula: 201509137939
Aluno(a): MARCELA COSTA DO NASCIMENTO Data: 11/06/2016 20:21:35 (Finalizada)
Em uma pesquisa sequencial a lista deve estar?
sempre desordenada.
ordenada somente o primeiro da lista.
ordenada ou desordenada.
desordenada somente da metade da lista até o final.
ordenada somente do início até a metade da lista.
Gabarito Comentado
Para consultarmos uma estrutura de dados, normalmente, empregamos um tipo de pesquisa de dados. O trecho
de programa a seguir referese 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:
int busca(float v[], float valor, int n) {
int ini = 0, fim = n 1, meio;
while (ini <= fim) {
meio = (ini + fim)/2;
if (v[meio] == valor) return meio;
if (valor < v[meio]) fim = meio 1;
else ini = meio+1;
return 1;
pesquisa binária
pesquisa indexada
pesquisa sequencial
pesquisa de cadeias
pesquisa cadeias indexada
Gabarito Comentado
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2918966160 1/3
11/06/2016 BDQ Prova
O processo de rearranjar um conjunto de dados em uma ordem crescente ou decrescente é chamado de
ordenação. Existem várias técnicas de ordenação, entretanto a técnica que procura o menor valor entre todos
os elementos do vetor e trocao pelo primeiro elemento; para os n 1 elementos restantes, determinação do
elemento de menor valor e troca pelo segundo elemento e assim sucessivamente, é chamado de:
Binária
Bolha
Hash
Seleção
Inserção
Gabarito Comentado
Qual a importância de se entender a "ordenação" de dados ?
A ordenação é a base na qual, muitos algoritmos são construídos. Entendendo a ordenação, temse
conhecimento para resolver outros problemas.
A ordenação é a base na qual, muitos sistemas são construídos. Entendendo a ordenação, temse
conhecimento para resolver outros problemas.
A ordenação é a base na qual, muitos sistemas são construídos. Entendendo a ordenação, temse
conhecimento para manter outros problemas.
A ordenação é a base na qual, muitos algoritmos são construídos. Entendendo a ordenação, temse
conhecimento para manter outros problemas.
A ordenação é a base na qual, muitos programas são construídos. Entendendo a ordenação, temse
conhecimento para manter outros problemas.
Gabarito Comentado
O seguinte trecho de programa abaixo representa qual tipo de estrutura de ordenação?
void ordenar(float v[], int n) // n é o no. de elementos em v
int i , // índice
aux, // auxiliar para troca
trocou = true,
fim = n 1;
while (trocou)
trocou = false; // sinaliza que é falso que trocou
for (i = 0; i < fim; i++)
{
if (v[i] > v[i+1])
{
aux = v[i];
v[i] = v[i+1];
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2918966160 2/3
11/06/2016 BDQ Prova
v[i+1] = aux;
// sinaliza que é verdadeiro que trocou
trocou = true;
} // fim if
} // fim for
fim; // decrementa o fim
} // fim while
} // fim da função
Heapsort
Mergesort
Bublesort
Shellsort
Quicksort
Gabarito Comentado
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 é:
Pesquisa binária
Seleção
Pesquisa sequencial
Bolha
Inserção
Gabarito Comentado
Fechar
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2918966160 3/3
11/06/2016 BDQ Prova
ESTRUTURA DE DADOS Lupa
Exercício: CCT0260_EX_A5_201509137939 Matrícula: 201509137939
Aluno(a): MARCELA COSTA DO NASCIMENTO Data: 11/06/2016 20:33:58 (Finalizada)
Considere uma lista com n livros, em que cada livro é modelado pela struct :
struct Livro {
string 堀倅tulo, editora, autor;
float preco;
};
A função X abaixo
void X (Livro v[ ], int &n, Livro L)
{
v[n] = L;
n++;
cout << "Operação realizada com sucesso.";
}
implementa a operação de :
Busca
Inserção
Ordenação por inserção
Inicialização
Subs堀倅tuição
Gabarito Comentado
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.
Apenas as afirmações II e III estão corretas.
Apenas a afirmação I está correta.
Apenas as afirmações II está corretas.
Apenas as afirmações I e III estão corretas.
Apenas as afirmações I e II estão corretas.
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2918988732 1/3
11/06/2016 BDQ Prova
Gabarito Comentado
O que acontece ao se inserir uma informação quando já usamos toda a área disponível do vetor (topo = fim)?
ordenação
underflow
remoção
inclusão
overflow
Gabarito Comentado
Analisando o trecho do algoritmo abaixo,
podese afirmar que se trata de uma operação de:
Remoção de um elemento de uma estrutura FIFO
Remoção de um elemento de uma estrutura LIFO
Exibição de um elemento em uma estrutura LIFO
Inserção de um elemento em uma estrutura LIFO
Inserção de um elemento em uma estrutura FIFO
Gabarito Comentado
__________________________ é uma lista linear em que a alocação de memória pode ser estática, e que a
forma de armazenamento é contígua ou sequencial na memória. Usamos este tipo de lista quando se tem em
mente um tamanho prédefinido, ou seja, quando se sabe até onde a lista pode crescer.
Lista Linear Não Alocada
Lista Linear Sequencial
Lista Linear Não Sequencial
Lista Linear de Alocação de Memória
Lista Não Linear
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2918988732 2/3
11/06/2016 BDQ Prova
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
Variável
Vetor
Gabarito Comentado
Fechar
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2918988732 3/3
11/06/2016 BDQ Prova
ESTRUTURA DE DADOS Lupa
Exercício: CCT0260_EX_A6_201509137939 Matrícula: 201509137939
Aluno(a): MARCELA COSTA DO NASCIMENTO Data: 11/06/2016 20:44:47 (Finalizada)
O que acontece quando tentamos retirar um elemento de uma pilha que já está vazia?
Ordenação.
Remoção.
Overflow.
Underflow.
Inclusão.
Gabarito Comentado
Seja S uma pilha inicialmente vazia. Primeiramente, o elemento A é inserido em S. Em seguida, o elemento B,
e assim por diante, até a inclusão final do elemento E. Ao término dessas operações, qual elemento estará no
topo de S?
D.
C.
E.
B.
A.
Gabarito Comentado
Respeitando as ordens de inserção e de retirada dos dados, uma estrutura de:
pilha é também denominada LIFO ou FILO.
fila é também denominada FIFO ou LIFO.
fila é também denominada FIFO ou FILO.
fila é também denominada LIFO ou LILO.
pilha é também denominada FIFO ou FILO.
Gabarito Comentado
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2919007410 1/2
11/06/2016 BDQ Prova
Na estrutura de dados tipo pilha, há duas operações básicas para empilhamento e desempilhamento. Essas
operações são conhecidas como:
PULL e POP;
PUSH e POP.
Base e Topo;
HEAP e POP;
PUSH e PULL;
Gabarito Comentado
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 operação TOP remove um elemento e altera o estado da Pilha
Nenhuma das operações altera o estado da Pilha
Somente a operação POP altera o estado da Pilha
Ambas alteram o estado da Pilha
Somente a operação TOP altera o estado da Pilha
A técnica LIFO (last in first out), utilizada em programação estruturada, é fundamentada no conceito de:
array
pilha
ponteiro
fila
loop
Gabarito Comentado
Fechar
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2919007410 2/2
11/06/2016 BDQ Prova
ESTRUTURA DE DADOS Lupa
Exercício: CCT0260_EX_A7_201509137939 Matrícula: 201509137939
Aluno(a): MARCELA COSTA DO NASCIMENTO Data: 11/06/2016 20:50:19 (Finalizada)
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)
Ao final da sequencia, a soma dos elementos de que (Q) será?
6
9
0
15
5
Gabarito Comentado
Um banco adotou dois sistemas de senhas para atender os cidadãos na ordem de chegada. O sistema I atende
todas pessoas que não possuem atendimento prioritário. O sistema II atende somente pessoas com
atendimento prioritário. Nessa situação,
O sistema I adota o esquema FIFO de organização de dados e o II, o esquema LIFO.
Tanto o sistema I, quanto o II, adota o esquema FIFO de organização de dados.
Tanto o sistema I, quanto o II, adota o esquema LIFO de organização de dados.
Tanto o sistema I, quanto o II, adota o esquema lista duplamente encadeada de organização de dados.
O sistema I adota o esquema LIFO de organização de dados e o II o esquema FIFO.
Assinale a opção que, corretamente, mostra exemplos em que a estrutura de dados fila é usada, de acordo com o
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2919017574 1/4
11/06/2016 BDQ Prova
critério de inserções e remoções que rege tal estrutura.
Buffer para gravação de dados em mídia e fila de pessoas para comprar o 谈Ȁcket do metrô.
Fila de arquivos para impressão e fila de pessoas no caixa de um supermercado.
Fila de pessoas para 谈Ȁrar o visto e fila de pessoas para usar o caixa eletrônico.
Fila de arquivos para impressão e buffer para gravação de dados em fila.
Fila de documentos para xerox e fila de arquivos para impressão.
Gabarito Comentado
Considere uma fila simples F de inteiros, do 谈Ȁpo Fila definido abaixo. Tal fila deverá armazenar códigos de agentes de uma
firma de espionagem, desde que haja espaço para um novo agente. Assinale a opção que corretamente desenfileira o código
de um agente, sabendo que a fila F foi inicializada de acordo com o trecho de código abaixo.
struct Fila { in t v[100], inicio, fim; } ;
Fila F;
F. inicio = 0;
F.fim = ‐1;
void desenfileirar(Fila F) {
if (F.inicio > F.fim)
cout << "Não há agentes para re谈Ȁrar. " << endl;
else {
cout << "Removido o agente " << F.v[F.inicio];
F.inicio++;
}
}
void desenfileirar(Fila &F) {
if (F.fim == ‐1 && F.inicio == 0)
cout << "Não há agentes para re谈Ȁrar. " << endl;
else {
cout << "Removido o agente " << F.v[F.inicio];
F.inicio++;
}
}
void desenfileirar(Fila F) {
cout << "Removido o agente " << F.v[F.inicio];
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2919017574 2/4
11/06/2016 BDQ Prova
F.inicio‐‐;
}
void desenfileirar(Fila &F) {
if (F.inicio > F.fim)
cout << "Não há agentes para re谈Ȁrar. " << endl;
else {
cout << "Removido o agente " << F.v[F.inicio];
F.inicio++;
}
}
void desenfileirar(Fila &F) {
if (F.inicio > F.fim)
cout << "Não há agentes para re谈Ȁrar. " << endl;
else {
cout << "Removido o agente " << F.v[F.inicio];
}
Gabarito Comentado
Ao inserirmos em uma estrutura de dados do tipo fila sequencial os seguintes elementos: A, B, C, D,
exatamente nesta ordem. E em seguida realizarmos duas operações consecutivas de remoção na fila e
imediatamente inserirmos dois novos elementos o X e o W. Podedmos afirmar que se realizarmos uma nova
operação de remoção, o elemento que será removido desta fila sera o:
D
W
A
X
C
O que acontece quando se deseja inserir um elemento em uma FILA que já está cheia?
Underflow.
Dequeue.
Overflow.
Enqueue.
A inserção é feita sem problema.
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2919017574 3/4
11/06/2016 BDQ Prova
Gabarito Comentado
Fechar
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2919017574 4/4
12/06/2016 BDQ Prova
ESTRUTURA DE DADOS Lupa
Exercício: CCT0260_EX_A8_201509137939 Matrícula: 201509137939
Aluno(a): MARCELA COSTA DO NASCIMENTO Data: 12/06/2016 16:02:22 (Finalizada)
Marque a afirmativa que represente uma separação.
Juntar duas listas, colocando uma lista no final de outra, obtendo, ao final, uma só lista resultante.
Consiste em dividir a lista em duas outras listas. A quantidade de nós que cada lista terá, depende da
necessidade.
Organizar os dados da lista em ordem crescente ou decrescente.
Intercalar a ordem dos dados da lista do final para o início, atualizando a lista.
Alterar a ordem dos dados da lista do final para o início, atualizando a lista.
Gabarito Comentado
Em uma lista linear simplesmente encadeada.
Além do campo relativo ao dado, cada nó possui dois ponteiros,
Cada ponteiro possui um só endereço que referencia o primeiro nó da lista.
O ponteiro do "primeiro" nó não é NULL, mas sim aponta de volta para o "primeiro" nó da lista, formando
um ciclo.
Cada nó possui um só ponteiro que referencia o próximo nó da lista.
O ponteiro do "último" nó não é NULL, mas sim aponta de volta para o "primeiro" nó da lista.
Gabarito Comentado
Podemos dizer que uma lista encadeada tem as seguintes características:
i) conhecida como lista ligada.
ii) seus nós são responsáveis para manter a sequência da lista.
iii) o último nó deve apontar para NULL.
Assinale a alternativa que informa as afirmativas corretas.
Somente a afirmativa iii esta correta.
Todas as afirmativas estão incorretas.
Todas as afirmativas estão corretas.
Somente a afirmativa i esta correta.
Somente as afirmativas i e ii estão corretas.
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=3185794656 1/4
12/06/2016 BDQ Prova
Gabarito Comentado
A linguagem C++ oferece quatro meios de criação de tipos de dados: matrizes, estruturas ou structs, uniões e
classes. As estruturas, que passaremos a chamar simplesmente de structs, são tipos de variáveis que agrupam
dados geralmente desiguais, enquanto matrizes são variáveis que agrupam dados similares. Devido a esta
característica as structs são utilizadas para modelar nodos (nós) de estruturas dinâmicas. Portanto podemos
afirmar que:
As estruturas dinâmicas são assim chamadas, pois não podem fazer alocação de memória em tempo de
execução, mas mesmo assim conseguem ter seus tamanhos alterados de acordo com a demanda.
As estruturas dinâmicas são assim chamadas, pois podem fazer alocação de memória em tempo de
compilação e entretanto seus tamanhos só são alterados na codificação de acordo com a demanda.
As estruturas dinâmicas são assim chamadas, pois podem fazer alocação de memória em tanto em
tempo de execução quanto em tempo de compilação, mas não podem ter seus tamanhos alterados de
acordo com a demanda.
As estruturas dinâmicas são assim chamadas, pois podem fazer alocação de memória em tempo de
execução e terem seus tamanhos alterados de acordo com a demanda.
As estruturas dinâmicas são assim chamadas, pois podem fazer alocação de memória em tempo de
compilação e terem seus tamanhos alterados de acordo com a demanda.
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
Ponteiro
Vetor
Matriz
Gabarito Comentado
Considere uma lista simplesmente encadeada com placas de carros. Assinale a opção que, corretamente, imprime todas as
placas da lista. Considere :
struct no {
string placa;
struct no *link;
};
no *p; //p aponta para o início da lista
void imprimir(no p) {
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=3185794656 2/4
12/06/2016 BDQ Prova
while (p != NULL) {
cout << pno;
p = plink;
}
}
void imprimir(no *p) {
if (p != NULL) {
cout << pplaca;
p = plink;
}
}
void imprimir(no *p) {
while (p != NULL) {
cout << pplaca;
p = plink;
}
void imprimir(no *p) {
while (p != NULL) {
cout << pplaca;
}
}
void imprimir(no *p) {
while (p != NULL) {
cout << p.placa;
p = p.link;
}
Gabarito Comentado
Fechar
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=3185794656 3/4
12/06/2016 BDQ Prova
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=3185794656 4/4
12/06/2016 BDQ Prova
ESTRUTURA DE DADOS Lupa
Exercício: CCT0260_EX_A9_201509137939 Matrícula: 201509137939
Aluno(a): MARCELA COSTA DO NASCIMENTO Data: 12/06/2016 16:25:04 (Finalizada)
Estava um aluno estudando Lista Simplesmente Encadeada quando encontrou em um site a
definição da struct nodo e de uma função cujo nome você deverá escolher para substituir XXX
nas opções abaixo depois que analisar a função, assumindo que teste foi realizado, permitindo
que a operação fosse realizada.
struct nodo
{
int info;
struct nodo *prox;
};
nodo* XXX(nodo *ptr, int valor)
{
nodo *temp = new nodo;
...
temp>info = valor;
temp>prox = ptr;
return temp;
}
InsereNoFim
InsereNoFrente
BuscaNaLista
RemoveNo
ListaNo
Gabarito Comentado
Assinale a opção correta. Sobre pilha dinâmica podemos afirmar que :
só pode ter seus dados impressos no sentido do último nó para o primeiro nó.
é recomendada para qualquer tipo de aplicação em que inserese no final e retirase do
início.
usa o critério FIFO, visto que é dinâmica.
inserese em qualquer posição, antes ou após qualquer nó, visto que é dinâmica.
usa o critério LIFO e é implementada usandose listas encadeadas.
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=3185871048 1/3
12/06/2016 BDQ Prova
Gabarito Comentado
Sabendo que uma fila encadeada possui seus nós definidos pela :
struct no {
int x;
no *prox;
};
Marque a alternativa que representa corretamente a criação ou alocação do nó na sintaxe do C++ para
utilização na fila.
p *no=new no;
no p > new no;
p *no > new no;
no *p > new no;
no *p=new no;
Gabarito Comentado
Sobre uma estrutura de dados do tipo LIFO, observe as seguintes afirmações:
(1) É uma pilha.
(2) Pode ser uma fila com prioridades
(3) É uma estrutura onde o primeiro elemento a entrar é o último a sair.
Sobre estas afirmações marque a opção correta:
Apenas as afirmações (1) e (3) são verdadeiras
Todas as afirmações são falsas
Apenas a afirmação (3) é verdadeira
Apenas a afirmação (1) é verdadeira
Todas as afirmações são verdadeiras
Para converter de decimal para binário usamos a estrutura de dados pilha. Assinale a opção que, corretamente,
indica as ações corretas para empilhar o resto da divisão gerado no processo de conversão, considerando uma
lista simplesmente encadeada. Considere o tipo definido abaixo :
struct no {
int dado;
struct no *link;
};
Não é necessário alocar memória com new. Basta criar uma struct do tipo no, armazenar o resto da
divisão número por 2 no campo dado e aterrar o campo link.
Basta alocar memória com new, armazenar o resto da divisão do número por 2 no campo dado do novo
nó e aterrar o link do novo nó.
É preciso armazenar o resto da divisão do número por 2 no campo dado do primeiro nó da lista e
retornar o ponteiro para este nó.
Basta alocar memória com new e armazenar o resto da divisão do número por 2 no campo dado do
novo nó .
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=3185871048 2/3
12/06/2016 BDQ Prova
É preciso alocar memória com new, armazenar o resto da divisão do número por 2 no campo dado do
novo nó, apontar o link do novo nó para o início da lista e enfim, retornar o ponteiro para o novo nó.
Gabarito Comentado
Tínhamos declarado um ponteiro de nome ptr e precisávamos construir uma estrutura de repetição que
pudesse repetir enquanto o ponteiro não fosse nulo. Observe os trechos abaixo e assinale qual a afirmativa
correta.
I if (ptr !=NULL)
II if( !ptr )
III if(ptr)
IV while (ptr !=NULL)
V while (ptr)
I e II estão corretas.
I e IV estão corretas
IV e V estão corretas.
III está correta
III e V estão corretas
Gabarito Comentado
Fechar
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=3185871048 3/3
12/06/2016 BDQ Prova
ESTRUTURA DE DADOS Lupa
Exercício: CCT0260_EX_A10_201509137939 Matrícula: 201509137939
Aluno(a): MARCELA COSTA DO NASCIMENTO Data: 12/06/2016 16:33:14 (Finalizada)
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 dados, marque a alternativa
correta.
struct nomeRegistro{
int info;
struct nomeRegistro* ant;
struct nomeRegistro* prox;
};
typedef struct nomeRegistro NOMEREGISTRO;
Lista encadeada
Fila
Pilha
Lista duplamente encadeada
Matriz
Observe a struct, definida globalmente, e um trecho de uma função que manipula
uma Lista Duplamente Encadeada.
struct listaDE
{
int info;
struct listaDE* ant;
struct listaDE* prox;
};
...
listaDE* novo = new listaDE;
novo>info = valor;
novo>prox = LISTA;
novo>ant = NULL;
Assinale a alternativa que apresenta o protótipo dessa função
listaDE *remove(listaDE *LISTA, int valor);
listaDE *insereInicio(listaDE *LISTA, int valor);
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=3185895960 1/3
12/06/2016 BDQ Prova
listaDE *busca (listaDE *LISTA, int valor);
void exibeIpF(listaDE *LISTA);
listaDE *insereFim(listaDE *LISTA, int valor);
Gabarito Comentado
Em uma lista duplamente encadeada, seus nodos são compostos por campos cujos tipos podem ser de
diferentes naturezas, entretanto dois de seus campos devem ser ponteiros para o mesmo tipo do nodo,
são estes os ponteiros ant e prox, que apontam respectivamente para o nodo anterior e para o próximo
nodo. Esta característica permite que a estrutura seja percorrida em ambos os sentidos. Assim
analisando as operações a seguir:
p>ant>prox=p>prox;
p>prox>ant=p>ant;
Sendo p um ponteiro que aponta para um dos nodos da lista, podese afirmar que:
As operações removem o nodo apontado pelo ponteiro p.
As operações inserem novo nodo, após o nodo apontado pelo ponteiro p.
As operações possibilitam a busca de um nodo apontado pelo ponteiro p.
As operações possibilitam o percurso do ponteiro p da esquerda para direita.
As operações possibilitam o percurso do ponteiro p da direita para esquerda.
Com relação à lista duplamente encadeada, é correto afirmar que :
Não pode ser vazia.
A lista pode ser percorrida com igual facilidade para a direita ou para a
esquerda, pois existem dois ponteiros.
A lista precisa ter sempre um ponteiro apontando para o 1º. nó
Consome menos memória do que uma lista simplesmente encadeada, se
tivermos uma mesma aplicação.
Não pode haver remoções no meio da lista.
Gabarito Comentado
Em relação às estruturas de dados, é correto afirmar:
LIFO referese à estrutura de dados do tipo pilha, que nada mais é do que uma lista linear, duplamente
encadeada.
Guardar endereço de memória em "nós", normalmente identificados por previous ou next, é uma
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=3185895960 2/3
12/06/2016 BDQ Prova
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 referese à 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.
Um grafo com um único vértice e sem arestas é conhecido como dígrafo.
Gabarito Comentado
Suponha uma listagem mantida com informações sobre um equipamento a ser adquirido por
uma empresa. A listagem possui as informações sobre de 10 fornecedores, descritas a seguir:
próximo: um ponteiro para o próximo fornecedor da listagem;
nome: nome, identificando o fornecedor;
valor: preço do equipamento no fornecedor;
anterior: um ponteiro para o fornecedor anterior da listagem.
Sendo o fornecedor "Z" o quinto elemento desta listagem e "X" e "Y" dois outros fornecedores
que não pertencem à listagem, com seus respectivos ponteiros "pZ", "pX" e "pY", considere o
trecho de código abaixo.
pY>proximo = pX;
pX>anterior = pY;
pX>proximo = pZ>proximo;
pZ>proximo>anterior = pX;
pZ>proximo = pY;
pY>anterior = pZ;
Este trecho de código é usado para inserir na listagem os fornecedores:
X, antes do Z, e Y, logo após o Z.
X, logo após o Z, e Y, logo após o X.
Y, antes do Z, e X, logo após o Z.
Y, antes do Z, e X, antes do Y.
Y, logo após o Z, e X, logo após o Y.
Gabarito Comentado
Fechar
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=3185895960 3/3
11/06/2016 BDQ Prova
ESTRUTURA DE DADOS Lupa
Exercício: CCT0260_EX_A1_201509137939 Matrícula: 201509137939
Aluno(a): MARCELA COSTA DO NASCIMENTO Data: 16/03/2016 09:36:01 (Finalizada)
As estruturas de dados podem ser caracterizadas como sendo uma forma organizada de armazenar
dados ou informações na memória, de modo a otimizar o acesso a estes. Muitas vezes existem
algoritmos de manipulação dados associados a estas estruturas. Verifique as seguintes sentenças:
IFilas são estruturas que recuperam os dados na ordem direta em que estes foram armazenados.
IIAs Pilhas são estruturas que recuperam os dados na ordem reversa em que estes foram
armazenados.
IIIAs Pilhas são estruturas que recuperam os dados na ordem direta em que estes foram
armazenados.
IVAs Filas são estruturas que recuperam os dados na ordem reversa em que estes foram
armazenados.
Marque a alternativa CORRETA:
As alternativas III e IV estão corretas.
As alternativas I e III estão corretas.
As alternativas II e IV estão corretas.
As alternativas I e II estão corretas
Todas as alternativas estão corretas.
Gabarito Comentado
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, expandindose ou contraindose 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.
II, IV e V.
I, II e III.
II, III, IV e V.
I, III e V.
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2330895138 1/3
11/06/2016 BDQ Prova
Gabarito Comentado
Qual estrutura de dados não linear que é utilizada na implementação de Redes de Computadores, na
Computação Gráfica, em modelagem de circuitos digitais e etc. E que se caracteriza por apresentar um conjunto
de nós e conexões entre eles.
Filas Encadeadas
Listas Encadeadas.
Pilhas Encadeadas
Grafos
Vetores
Observe o trecho do programa em C++ abaixo e, após, entrar com os valores sugeridos para sua execução
assinale a alternativa que representa a resposta final.
cin >> a;
cin >> b;
cin >> c;
cin >> d;
cout << a;
cout << b;
cout << c;
cout << d;
cout << d;
cout << c;
cout << b;
cout << a;
Após a impressão dos valores pela ordem teremos uma fila e um grafo.
Após a impressão dos valores pela ordem teremos duas filas.
Após a impressão dos valores pela ordem teremos uma pilha e uma fila.
Após a impressão dos valores pela ordem teremos duas pilhas.
Após a impressão dos valores pela ordem teremos uma fila e uma pilha.
Na maioria dos sistemas operacionais, os arquivos são organizados hierarquicamente em um esquema de
diretórios (pastas) e subdiretórios. Qual a estrutura mais adequada para representar este problema ?
pilha
lista
grafo
fila
árvore
Gabarito Comentado
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2330895138 2/3
11/06/2016 BDQ Prova
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.
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.
Gabarito Comentado
Fechar
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2330895138 3/3
11/06/2016 BDQ Prova
ESTRUTURA DE DADOS Lupa
Exercício: CCT0260_EX_A2_201509137939 Matrícula: 201509137939
Aluno(a): MARCELA COSTA DO NASCIMENTO Data: 24/03/2016 17:36:57 (Finalizada)
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
Inteiro
Real
Constante
Local
Gabarito Comentado
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.
int funcao(float v[], float vl, int n)
{
for (int i = 0; i < n; i++)
if (v[i] == vl)
return i;
return 1;
}
Retorna 1 se o valor de n foi encontrado.
Retorna 1 se o valor de vl estiver dentro de v.
Retorna a posição de v se o valor vl foi encontrado.
Resulta em erro, se o valor de vl não estiver dentro de v.
Retorna o valor de vl se o valor n foi encontrado.
Gabarito Comentado
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
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2366393502 1/3
11/06/2016 BDQ Prova
o mesmo valor.
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".
Em uma função "resul" temse 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.
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.
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.
Gabarito Comentado
Auxiliar = 111 Numero1 = 1000 Numero2 = 80
Auxiliar = 101 Numero1 = 900 Numero2 = 20
Auxiliar = 100 Numero1 = 900 Numero2 = 80
Auxiliar = 100 Numero1 = 1000 Numero2 = 20
Auxiliar = 100 Numero1 = 900 Numero2 = 20
Gabarito Comentado
Blocos únicos de códigos que realizam diversas tarefas distitintas são de dificil manutenção. Portanto, utilizase
a tecnica da modularização de programas, a fim de facilitar a implementação e a manutenção dos programas.
Esta técnica, também chamada de modularização, tem como principal elemento:
As Filas
Os Vetores
As Estruturas de Dados
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2366393502 2/3
11/06/2016 BDQ Prova
Os Grafos
As funções
Uma função possui um valor de retorno inteiro, recebe por valor um inteiro como primeiro parâmetro e por
referência um inteiro como segundo parâmetro. Qual das respostas abaixo poderia representar o protótipo
dessa função:
void func (int a, int &b);
void func (int &a, int &b);
int func (int a, int &b);
int func (&int, int);
int func (int &a, int b);
Gabarito Comentado
Fechar
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2366393502 3/3
11/06/2016 BDQ Prova
ESTRUTURA DE DADOS Lupa
Exercício: CCT0260_EX_A3_201509137939 Matrícula: 201509137939
Aluno(a): MARCELA COSTA DO NASCIMENTO Data: 11/06/2016 20:14:27 (Finalizada)
Podese definir uma estrutura heterogênea como sendo um conjunto de elementos, geralmente,
agrupados sob uma lógica e associados por um nome.
Esses elementos podem ser variáveis simples, matrizes ou ainda outras estruturas. Seja a definição de
uma estrutura como:
struct aluno {
string nome;
float nota;
};
Suponha ainda que exista um vetor desta estrutura, definido como:
aluno vet [ 100];
Marque a alternativa em que é atribuída de forma correta a nota 5.7 para o décimo primeiro elemento
deste vetor.
vet[10]=aluno.5.7;
aluno.vet[10]=5.7;
vet[10].nota=5.7;
vet[10].aluno.nota=5.7 ;
aluno.vet[10].nota=5.7;
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?
Nome da estrutura vírgula tipo do campo
Nome da estrutura ponto tipo do campo
Nome da estrutura seta nome do campo
Nome da estrutura ponto nome do campo
Nome da estrutura seta tipo do campo
Gabarito Comentado
Podese definir uma estrutura heterogênea como sendo um conjunto de elementos, geralmente, agrupados sob
uma lógica e associados por um nome.
Esses elementos podem ser variáveis simples, matrizes ou ainda outras estruturas. Seja a definição de uma
estrutura como:
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2918951970 1/3
11/06/2016 BDQ Prova
struct aluno {
string nome;
float nota;
};
Suponha ainda que exista um vetor desta estrutura, definido como:
aluno vet [100];
Marque a alternativa em que é atribuída de forma correta a nota 5.7 para o décimo primeiro elemento deste
vetor.
aluno.vet[10]=5.7;
aluno.vet[10].nota=5.7;
vet[10]=aluno.5.7;
vet[10].nota=5.7;
vet[10].aluno.nota=5.7 ;
Podese definir uma estrutura heterogênea como sendo um conjunto de elementos, geralmente, agrupados sob
uma lógica e associados por um nome. Esses elementos podem ser variáveis simples, matrizes ou ainda outras
estruturas. Seja a definição de uma estrutura como: struct aluno { string nome; float media; }; Suponha ainda
que exista um vetor desta estrutura, definido como: aluno vet [ 10]; Marque a alternativa em que é atribuída de
forma correta a media 6.0 para o quarto elemento deste vetor.
aluno[3].10=6.0;
aluno[10]=6.0;
vet[3].media=6.0;
aluno[3].media=6.0;
vet[3].aluno=6.0;
Marque a opção correta, considerando
struct Livro {
int codigo;
float preco;
} liv;
liv.preco = 30.70;
Livro.liv.codigo = 12345;
Livro.codigo = 12345;
liv>preco = 30.70;
Livro>liv.codigo = 12345;
Qual das seguintes estruturas de dados é classificada como heterogênea?
Fila
Pilha
Loop
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2918951970 2/3
11/06/2016 BDQ Prova
Vetor
Registro
Gabarito Comentado
Fechar
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2918951970 3/3
11/06/2016 BDQ Prova
ESTRUTURA DE DADOS Lupa
Exercício: CCT0260_EX_A4_201509137939 Matrícula: 201509137939
Aluno(a): MARCELA COSTA DO NASCIMENTO Data: 11/06/2016 20:21:35 (Finalizada)
Em uma pesquisa sequencial a lista deve estar?
sempre desordenada.
ordenada somente o primeiro da lista.
ordenada ou desordenada.
desordenada somente da metade da lista até o final.
ordenada somente do início até a metade da lista.
Gabarito Comentado
Para consultarmos uma estrutura de dados, normalmente, empregamos um tipo de pesquisa de dados. O trecho
de programa a seguir referese 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:
int busca(float v[], float valor, int n) {
int ini = 0, fim = n 1, meio;
while (ini <= fim) {
meio = (ini + fim)/2;
if (v[meio] == valor) return meio;
if (valor < v[meio]) fim = meio 1;
else ini = meio+1;
return 1;
pesquisa binária
pesquisa indexada
pesquisa sequencial
pesquisa de cadeias
pesquisa cadeias indexada
Gabarito Comentado
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2918966160 1/3
11/06/2016 BDQ Prova
O processo de rearranjar um conjunto de dados em uma ordem crescente ou decrescente é chamado de
ordenação. Existem várias técnicas de ordenação, entretanto a técnica que procura o menor valor entre todos
os elementos do vetor e trocao pelo primeiro elemento; para os n 1 elementos restantes, determinação do
elemento de menor valor e troca pelo segundo elemento e assim sucessivamente, é chamado de:
Binária
Bolha
Hash
Seleção
Inserção
Gabarito Comentado
Qual a importância de se entender a "ordenação" de dados ?
A ordenação é a base na qual, muitos algoritmos são construídos. Entendendo a ordenação, temse
conhecimento para resolver outros problemas.
A ordenação é a base na qual, muitos sistemas são construídos. Entendendo a ordenação, temse
conhecimento para resolver outros problemas.
A ordenação é a base na qual, muitos sistemas são construídos. Entendendo a ordenação, temse
conhecimento para manter outros problemas.
A ordenação é a base na qual, muitos algoritmos são construídos. Entendendo a ordenação, temse
conhecimento para manter outros problemas.
A ordenação é a base na qual, muitos programas são construídos. Entendendo a ordenação, temse
conhecimento para manter outros problemas.
Gabarito Comentado
O seguinte trecho de programa abaixo representa qual tipo de estrutura de ordenação?
void ordenar(float v[], int n) // n é o no. de elementos em v
int i , // índice
aux, // auxiliar para troca
trocou = true,
fim = n 1;
while (trocou)
trocou = false; // sinaliza que é falso que trocou
for (i = 0; i < fim; i++)
{
if (v[i] > v[i+1])
{
aux = v[i];
v[i] = v[i+1];
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2918966160 2/3
11/06/2016 BDQ Prova
v[i+1] = aux;
// sinaliza que é verdadeiro que trocou
trocou = true;
} // fim if
} // fim for
fim; // decrementa o fim
} // fim while
} // fim da função
Heapsort
Mergesort
Bublesort
Shellsort
Quicksort
Gabarito Comentado
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 é:
Pesquisa binária
Seleção
Pesquisa sequencial
Bolha
Inserção
Gabarito Comentado
Fechar
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2918966160 3/3
11/06/2016 BDQ Prova
ESTRUTURA DE DADOS Lupa
Exercício: CCT0260_EX_A5_201509137939 Matrícula: 201509137939
Aluno(a): MARCELA COSTA DO NASCIMENTO Data: 11/06/2016 20:33:58 (Finalizada)
Considere uma lista com n livros, em que cada livro é modelado pela struct :
struct Livro {
string 堀倅tulo, editora, autor;
float preco;
};
A função X abaixo
void X (Livro v[ ], int &n, Livro L)
{
v[n] = L;
n++;
cout << "Operação realizada com sucesso.";
}
implementa a operação de :
Busca
Inserção
Ordenação por inserção
Inicialização
Subs堀倅tuição
Gabarito Comentado
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.
Apenas as afirmações II e III estão corretas.
Apenas a afirmação I está correta.
Apenas as afirmações II está corretas.
Apenas as afirmações I e III estão corretas.
Apenas as afirmações I e II estão corretas.
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2918988732 1/3
11/06/2016 BDQ Prova
Gabarito Comentado
O que acontece ao se inserir uma informação quando já usamos toda a área disponível do vetor (topo = fim)?
ordenação
underflow
remoção
inclusão
overflow
Gabarito Comentado
Analisando o trecho do algoritmo abaixo,
podese afirmar que se trata de uma operação de:
Remoção de um elemento de uma estrutura FIFO
Remoção de um elemento de uma estrutura LIFO
Exibição de um elemento em uma estrutura LIFO
Inserção de um elemento em uma estrutura LIFO
Inserção de um elemento em uma estrutura FIFO
Gabarito Comentado
__________________________ é uma lista linear em que a alocação de memória pode ser estática, e que a
forma de armazenamento é contígua ou sequencial na memória. Usamos este tipo de lista quando se tem em
mente um tamanho prédefinido, ou seja, quando se sabe até onde a lista pode crescer.
Lista Linear Não Alocada
Lista Linear Sequencial
Lista Linear Não Sequencial
Lista Linear de Alocação de Memória
Lista Não Linear
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2918988732 2/3
11/06/2016 BDQ Prova
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
Variável
Vetor
Gabarito Comentado
Fechar
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2918988732 3/3
11/06/2016 BDQ Prova
ESTRUTURA DE DADOS Lupa
Exercício: CCT0260_EX_A6_201509137939 Matrícula: 201509137939
Aluno(a): MARCELA COSTA DO NASCIMENTO Data: 11/06/2016 20:44:47 (Finalizada)
O que acontece quando tentamos retirar um elemento de uma pilha que já está vazia?
Ordenação.
Remoção.
Overflow.
Underflow.
Inclusão.
Gabarito Comentado
Seja S uma pilha inicialmente vazia. Primeiramente, o elemento A é inserido em S. Em seguida, o elemento B,
e assim por diante, até a inclusão final do elemento E. Ao término dessas operações, qual elemento estará no
topo de S?
D.
C.
E.
B.
A.
Gabarito Comentado
Respeitando as ordens de inserção e de retirada dos dados, uma estrutura de:
pilha é também denominada LIFO ou FILO.
fila é também denominada FIFO ou LIFO.
fila é também denominada FIFO ou FILO.
fila é também denominada LIFO ou LILO.
pilha é também denominada FIFO ou FILO.
Gabarito Comentado
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2919007410 1/2
11/06/2016 BDQ Prova
Na estrutura de dados tipo pilha, há duas operações básicas para empilhamento e desempilhamento. Essas
operações são conhecidas como:
PULL e POP;
PUSH e POP.
Base e Topo;
HEAP e POP;
PUSH e PULL;
Gabarito Comentado
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 operação TOP remove um elemento e altera o estado da Pilha
Nenhuma das operações altera o estado da Pilha
Somente a operação POP altera o estado da Pilha
Ambas alteram o estado da Pilha
Somente a operação TOP altera o estado da Pilha
A técnica LIFO (last in first out), utilizada em programação estruturada, é fundamentada no conceito de:
array
pilha
ponteiro
fila
loop
Gabarito Comentado
Fechar
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2919007410 2/2
11/06/2016 BDQ Prova
ESTRUTURA DE DADOS Lupa
Exercício: CCT0260_EX_A7_201509137939 Matrícula: 201509137939
Aluno(a): MARCELA COSTA DO NASCIMENTO Data: 11/06/2016 20:50:19 (Finalizada)
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)
Ao final da sequencia, a soma dos elementos de que (Q) será?
6
9
0
15
5
Gabarito Comentado
Um banco adotou dois sistemas de senhas para atender os cidadãos na ordem de chegada. O sistema I atende
todas pessoas que não possuem atendimento prioritário. O sistema II atende somente pessoas com
atendimento prioritário. Nessa situação,
O sistema I adota o esquema FIFO de organização de dados e o II, o esquema LIFO.
Tanto o sistema I, quanto o II, adota o esquema FIFO de organização de dados.
Tanto o sistema I, quanto o II, adota o esquema LIFO de organização de dados.
Tanto o sistema I, quanto o II, adota o esquema lista duplamente encadeada de organização de dados.
O sistema I adota o esquema LIFO de organização de dados e o II o esquema FIFO.
Assinale a opção que, corretamente, mostra exemplos em que a estrutura de dados fila é usada, de acordo com o
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2919017574 1/4
11/06/2016 BDQ Prova
critério de inserções e remoções que rege tal estrutura.
Buffer para gravação de dados em mídia e fila de pessoas para comprar o 谈Ȁcket do metrô.
Fila de arquivos para impressão e fila de pessoas no caixa de um supermercado.
Fila de pessoas para 谈Ȁrar o visto e fila de pessoas para usar o caixa eletrônico.
Fila de arquivos para impressão e buffer para gravação de dados em fila.
Fila de documentos para xerox e fila de arquivos para impressão.
Gabarito Comentado
Considere uma fila simples F de inteiros, do 谈Ȁpo Fila definido abaixo. Tal fila deverá armazenar códigos de agentes de uma
firma de espionagem, desde que haja espaço para um novo agente. Assinale a opção que corretamente desenfileira o código
de um agente, sabendo que a fila F foi inicializada de acordo com o trecho de código abaixo.
struct Fila { in t v[100], inicio, fim; } ;
Fila F;
F. inicio = 0;
F.fim = ‐1;
void desenfileirar(Fila F) {
if (F.inicio > F.fim)
cout << "Não há agentes para re谈Ȁrar. " << endl;
else {
cout << "Removido o agente " << F.v[F.inicio];
F.inicio++;
}
}
void desenfileirar(Fila &F) {
if (F.fim == ‐1 && F.inicio == 0)
cout << "Não há agentes para re谈Ȁrar. " << endl;
else {
cout << "Removido o agente " << F.v[F.inicio];
F.inicio++;
}
}
void desenfileirar(Fila F) {
cout << "Removido o agente " << F.v[F.inicio];
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2919017574 2/4
11/06/2016 BDQ Prova
F.inicio‐‐;
}
void desenfileirar(Fila &F) {
if (F.inicio > F.fim)
cout << "Não há agentes para re谈Ȁrar. " << endl;
else {
cout << "Removido o agente " << F.v[F.inicio];
F.inicio++;
}
}
void desenfileirar(Fila &F) {
if (F.inicio > F.fim)
cout << "Não há agentes para re谈Ȁrar. " << endl;
else {
cout << "Removido o agente " << F.v[F.inicio];
}
Gabarito Comentado
Ao inserirmos em uma estrutura de dados do tipo fila sequencial os seguintes elementos: A, B, C, D,
exatamente nesta ordem. E em seguida realizarmos duas operações consecutivas de remoção na fila e
imediatamente inserirmos dois novos elementos o X e o W. Podedmos afirmar que se realizarmos uma nova
operação de remoção, o elemento que será removido desta fila sera o:
D
W
A
X
C
O que acontece quando se deseja inserir um elemento em uma FILA que já está cheia?
Underflow.
Dequeue.
Overflow.
Enqueue.
A inserção é feita sem problema.
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2919017574 3/4
11/06/2016 BDQ Prova
Gabarito Comentado
Fechar
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=2919017574 4/4
12/06/2016 BDQ Prova
ESTRUTURA DE DADOS Lupa
Exercício: CCT0260_EX_A8_201509137939 Matrícula: 201509137939
Aluno(a): MARCELA COSTA DO NASCIMENTO Data: 12/06/2016 16:02:22 (Finalizada)
Marque a afirmativa que represente uma separação.
Juntar duas listas, colocando uma lista no final de outra, obtendo, ao final, uma só lista resultante.
Consiste em dividir a lista em duas outras listas. A quantidade de nós que cada lista terá, depende da
necessidade.
Organizar os dados da lista em ordem crescente ou decrescente.
Intercalar a ordem dos dados da lista do final para o início, atualizando a lista.
Alterar a ordem dos dados da lista do final para o início, atualizando a lista.
Gabarito Comentado
Em uma lista linear simplesmente encadeada.
Além do campo relativo ao dado, cada nó possui dois ponteiros,
Cada ponteiro possui um só endereço que referencia o primeiro nó da lista.
O ponteiro do "primeiro" nó não é NULL, mas sim aponta de volta para o "primeiro" nó da lista, formando
um ciclo.
Cada nó possui um só ponteiro que referencia o próximo nó da lista.
O ponteiro do "último" nó não é NULL, mas sim aponta de volta para o "primeiro" nó da lista.
Gabarito Comentado
Podemos dizer que uma lista encadeada tem as seguintes características:
i) conhecida como lista ligada.
ii) seus nós são responsáveis para manter a sequência da lista.
iii) o último nó deve apontar para NULL.
Assinale a alternativa que informa as afirmativas corretas.
Somente a afirmativa iii esta correta.
Todas as afirmativas estão incorretas.
Todas as afirmativas estão corretas.
Somente a afirmativa i esta correta.
Somente as afirmativas i e ii estão corretas.
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=3185794656 1/4
12/06/2016 BDQ Prova
Gabarito Comentado
A linguagem C++ oferece quatro meios de criação de tipos de dados: matrizes, estruturas ou structs, uniões e
classes. As estruturas, que passaremos a chamar simplesmente de structs, são tipos de variáveis que agrupam
dados geralmente desiguais, enquanto matrizes são variáveis que agrupam dados similares. Devido a esta
característica as structs são utilizadas para modelar nodos (nós) de estruturas dinâmicas. Portanto podemos
afirmar que:
As estruturas dinâmicas são assim chamadas, pois não podem fazer alocação de memória em tempo de
execução, mas mesmo assim conseguem ter seus tamanhos alterados de acordo com a demanda.
As estruturas dinâmicas são assim chamadas, pois podem fazer alocação de memória em tempo de
compilação e entretanto seus tamanhos só são alterados na codificação de acordo com a demanda.
As estruturas dinâmicas são assim chamadas, pois podem fazer alocação de memória em tanto em
tempo de execução quanto em tempo de compilação, mas não podem ter seus tamanhos alterados de
acordo com a demanda.
As estruturas dinâmicas são assim chamadas, pois podem fazer alocação de memória em tempo de
execução e terem seus tamanhos alterados de acordo com a demanda.
As estruturas dinâmicas são assim chamadas, pois podem fazer alocação de memória em tempo de
compilação e terem seus tamanhos alterados de acordo com a demanda.
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
Ponteiro
Vetor
Matriz
Gabarito Comentado
Considere uma lista simplesmente encadeada com placas de carros. Assinale a opção que, corretamente, imprime todas as
placas da lista. Considere :
struct no {
string placa;
struct no *link;
};
no *p; //p aponta para o início da lista
void imprimir(no p) {
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=3185794656 2/4
12/06/2016 BDQ Prova
while (p != NULL) {
cout << pno;
p = plink;
}
}
void imprimir(no *p) {
if (p != NULL) {
cout << pplaca;
p = plink;
}
}
void imprimir(no *p) {
while (p != NULL) {
cout << pplaca;
p = plink;
}
void imprimir(no *p) {
while (p != NULL) {
cout << pplaca;
}
}
void imprimir(no *p) {
while (p != NULL) {
cout << p.placa;
p = p.link;
}
Gabarito Comentado
Fechar
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=3185794656 3/4
12/06/2016 BDQ Prova
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=3185794656 4/4
12/06/2016 BDQ Prova
ESTRUTURA DE DADOS Lupa
Exercício: CCT0260_EX_A9_201509137939 Matrícula: 201509137939
Aluno(a): MARCELA COSTA DO NASCIMENTO Data: 12/06/2016 16:25:04 (Finalizada)
Estava um aluno estudando Lista Simplesmente Encadeada quando encontrou em um site a
definição da struct nodo e de uma função cujo nome você deverá escolher para substituir XXX
nas opções abaixo depois que analisar a função, assumindo que teste foi realizado, permitindo
que a operação fosse realizada.
struct nodo
{
int info;
struct nodo *prox;
};
nodo* XXX(nodo *ptr, int valor)
{
nodo *temp = new nodo;
...
temp>info = valor;
temp>prox = ptr;
return temp;
}
InsereNoFim
InsereNoFrente
BuscaNaLista
RemoveNo
ListaNo
Gabarito Comentado
Assinale a opção correta. Sobre pilha dinâmica podemos afirmar que :
só pode ter seus dados impressos no sentido do último nó para o primeiro nó.
é recomendada para qualquer tipo de aplicação em que inserese no final e retirase do
início.
usa o critério FIFO, visto que é dinâmica.
inserese em qualquer posição, antes ou após qualquer nó, visto que é dinâmica.
usa o critério LIFO e é implementada usandose listas encadeadas.
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=3185871048 1/3
12/06/2016 BDQ Prova
Gabarito Comentado
Sabendo que uma fila encadeada possui seus nós definidos pela :
struct no {
int x;
no *prox;
};
Marque a alternativa que representa corretamente a criação ou alocação do nó na sintaxe do C++ para
utilização na fila.
p *no=new no;
no p > new no;
p *no > new no;
no *p > new no;
no *p=new no;
Gabarito Comentado
Sobre uma estrutura de dados do tipo LIFO, observe as seguintes afirmações:
(1) É uma pilha.
(2) Pode ser uma fila com prioridades
(3) É uma estrutura onde o primeiro elemento a entrar é o último a sair.
Sobre estas afirmações marque a opção correta:
Apenas as afirmações (1) e (3) são verdadeiras
Todas as afirmações são falsas
Apenas a afirmação (3) é verdadeira
Apenas a afirmação (1) é verdadeira
Todas as afirmações são verdadeiras
Para converter de decimal para binário usamos a estrutura de dados pilha. Assinale a opção que, corretamente,
indica as ações corretas para empilhar o resto da divisão gerado no processo de conversão, considerando uma
lista simplesmente encadeada. Considere o tipo definido abaixo :
struct no {
int dado;
struct no *link;
};
Não é necessário alocar memória com new. Basta criar uma struct do tipo no, armazenar o resto da
divisão número por 2 no campo dado e aterrar o campo link.
Basta alocar memória com new, armazenar o resto da divisão do número por 2 no campo dado do novo
nó e aterrar o link do novo nó.
É preciso armazenar o resto da divisão do número por 2 no campo dado do primeiro nó da lista e
retornar o ponteiro para este nó.
Basta alocar memória com new e armazenar o resto da divisão do número por 2 no campo dado do
novo nó .
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=3185871048 2/3
12/06/2016 BDQ Prova
É preciso alocar memória com new, armazenar o resto da divisão do número por 2 no campo dado do
novo nó, apontar o link do novo nó para o início da lista e enfim, retornar o ponteiro para o novo nó.
Gabarito Comentado
Tínhamos declarado um ponteiro de nome ptr e precisávamos construir uma estrutura de repetição que
pudesse repetir enquanto o ponteiro não fosse nulo. Observe os trechos abaixo e assinale qual a afirmativa
correta.
I if (ptr !=NULL)
II if( !ptr )
III if(ptr)
IV while (ptr !=NULL)
V while (ptr)
I e II estão corretas.
I e IV estão corretas
IV e V estão corretas.
III está correta
III e V estão corretas
Gabarito Comentado
Fechar
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=3185871048 3/3
12/06/2016 BDQ Prova
ESTRUTURA DE DADOS Lupa
Exercício: CCT0260_EX_A10_201509137939 Matrícula: 201509137939
Aluno(a): MARCELA COSTA DO NASCIMENTO Data: 12/06/2016 16:33:14 (Finalizada)
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 dados, marque a alternativa
correta.
struct nomeRegistro{
int info;
struct nomeRegistro* ant;
struct nomeRegistro* prox;
};
typedef struct nomeRegistro NOMEREGISTRO;
Lista encadeada
Fila
Pilha
Lista duplamente encadeada
Matriz
Observe a struct, definida globalmente, e um trecho de uma função que manipula
uma Lista Duplamente Encadeada.
struct listaDE
{
int info;
struct listaDE* ant;
struct listaDE* prox;
};
...
listaDE* novo = new listaDE;
novo>info = valor;
novo>prox = LISTA;
novo>ant = NULL;
Assinale a alternativa que apresenta o protótipo dessa função
listaDE *remove(listaDE *LISTA, int valor);
listaDE *insereInicio(listaDE *LISTA, int valor);
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=3185895960 1/3
12/06/2016 BDQ Prova
listaDE *busca (listaDE *LISTA, int valor);
void exibeIpF(listaDE *LISTA);
listaDE *insereFim(listaDE *LISTA, int valor);
Gabarito Comentado
Em uma lista duplamente encadeada, seus nodos são compostos por campos cujos tipos podem ser de
diferentes naturezas, entretanto dois de seus campos devem ser ponteiros para o mesmo tipo do nodo,
são estes os ponteiros ant e prox, que apontam respectivamente para o nodo anterior e para o próximo
nodo. Esta característica permite que a estrutura seja percorrida em ambos os sentidos. Assim
analisando as operações a seguir:
p>ant>prox=p>prox;
p>prox>ant=p>ant;
Sendo p um ponteiro que aponta para um dos nodos da lista, podese afirmar que:
As operações removem o nodo apontado pelo ponteiro p.
As operações inserem novo nodo, após o nodo apontado pelo ponteiro p.
As operações possibilitam a busca de um nodo apontado pelo ponteiro p.
As operações possibilitam o percurso do ponteiro p da esquerda para direita.
As operações possibilitam o percurso do ponteiro p da direita para esquerda.
Com relação à lista duplamente encadeada, é correto afirmar que :
Não pode ser vazia.
A lista pode ser percorrida com igual facilidade para a direita ou para a
esquerda, pois existem dois ponteiros.
A lista precisa ter sempre um ponteiro apontando para o 1º. nó
Consome menos memória do que uma lista simplesmente encadeada, se
tivermos uma mesma aplicação.
Não pode haver remoções no meio da lista.
Gabarito Comentado
Em relação às estruturas de dados, é correto afirmar:
LIFO referese à estrutura de dados do tipo pilha, que nada mais é do que uma lista linear, duplamente
encadeada.
Guardar endereço de memória em "nós", normalmente identificados por previous ou next, é uma
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=3185895960 2/3
12/06/2016 BDQ Prova
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 referese à 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.
Um grafo com um único vértice e sem arestas é conhecido como dígrafo.
Gabarito Comentado
Suponha uma listagem mantida com informações sobre um equipamento a ser adquirido por
uma empresa. A listagem possui as informações sobre de 10 fornecedores, descritas a seguir:
próximo: um ponteiro para o próximo fornecedor da listagem;
nome: nome, identificando o fornecedor;
valor: preço do equipamento no fornecedor;
anterior: um ponteiro para o fornecedor anterior da listagem.
Sendo o fornecedor "Z" o quinto elemento desta listagem e "X" e "Y" dois outros fornecedores
que não pertencem à listagem, com seus respectivos ponteiros "pZ", "pX" e "pY", considere o
trecho de código abaixo.
pY>proximo = pX;
pX>anterior = pY;
pX>proximo = pZ>proximo;
pZ>proximo>anterior = pX;
pZ>proximo = pY;
pY>anterior = pZ;
Este trecho de código é usado para inserir na listagem os fornecedores:
X, antes do Z, e Y, logo após o Z.
X, logo após o Z, e Y, logo após o X.
Y, antes do Z, e X, logo após o Z.
Y, antes do Z, e X, antes do Y.
Y, logo após o Z, e X, logo após o Y.
Gabarito Comentado
Fechar
http://simulado.estacio.br/bdq_simulados_exercicio_preview.asp?cript_hist=3185895960 3/3
ESTRUTURA DE DADOS
Simulado: CCT0260_ Fechar
Aluno(a): Matrícula:
Desempenho: 10,0 de 10,0 Data: 22/09/2015 17:32:14 (Finalizada)
I A estrutura de dados que melhor representa os diretórios ou pastas de arquivos do computador é a árvore.
II A estrutura de dados FILA é não linear assim como o Grafo.
III O termo folha em uma estrutura de dados é usado para um nó sem filhos e que tem grau 0,
IV O grau de uma árvore é definido pelo número de subárvores de um nó.
V O grafo é uma estrutura de dados que tem limitação para o número de vértices.
VI Uma das aplicações da estrutura de dados grafo é a Computação Gráfica.
Gabarito Comentado.
Pilha
Grafo
Lista
Fila
Árvore
Os Vetores
Os Grafos
As Estruturas de Dados
As funções
As Filas
aluno[3].media=6.0;
aluno[3].10=6.0;
aluno[10]=6.0;
vet[3].media=6.0;
vet[3].aluno=6.0;
struct aluno {
string nome;
float nota;
};
Marque a alternativa em que é atribuída de forma correta a nota 5.7 para o décimo primeiro
elemento deste vetor.
vet[10].aluno.nota=5.7 ;
aluno.vet[10].nota=5.7;
vet[10].nota=5.7;
vet[10]=aluno.5.7;
aluno.vet[10]=5.7;
Gabarito Comentado.
ordenação
inclusão
remoção
overflow
underflow
Gabarito Comentado.
10a Questão (Ref.: 201401285887) Pontos: 1,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:
Gabarito Comentado.
Avaliação: CCT0260_AV_201110046804 » ESTRUTURA DE DADOS
Tipo de Avaliação: AV
Aluno:
Resposta: O PRIMEIRO ELEMENTO A ENTRAR NA FILA É O PRIMEIRO A SAIR DA FILA (First In. First Out).
Defina um tipo de dado (registro) capaz de armazenar as seguintes informações sobre um determinado cliente
de um banco: nome, CPF, RG, número da conta, data de abertura da conta, e saldo.
Com base neste tipo de dado, construa o trecho código em C++ que represente a leitura dos dados do cliente
feita pelo usuário.
Resposta: struct BancoCliente{String nome[30], char cpf, char rg, int numConta, int d_abertura, float saldo}
BancoCliente cliente; cin>>cliente.nome; cin>>cliente.cpf; cin>>cliente.rg; cin>>cliente.numConta;
cin>>cliente.d_abertura; cin>>cliente.saldo;
Gabarito:
struct ClienteBanco{
string nome;
string cpf;
int rg;
int numConta;
double saldo;
};
ClienteBanco cliente;
cin >> cliente.nome;
cin >> cliente.cpf;
cin >> cliente.rg;
cin >> cliente.saldo;
Considere uma estrutura de dados do tipo vetor. Com respeito a tal estrutura, é correto que seus componentes
são caracteristicamente:
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 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 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.
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
Seleção
MergeSort
Inserção
QuickSort
A estrutura de dados do tipo pilha (stack) é um tipo abstrato de dado baseada no princípio:
Da localidade de referência.
De dividir para conquistar.
Last In First Out (LIFO).
First In First Out (FIFO).
Da indiferença.
Sabemos que podemos representar uma expressão de três formas, sendo que uma
delas é chamada de notação polonesa reversa ( pós-fixa).
Suponha que um professor de Estrutura de Dados desejasse compor a nota do
bimestre com uma prova e um trabalho oral, usando pesos diferenciados para as
notas. Sendo assim, usaria a média ponderada como a expressão abaixo.
A única calculadora que encontrou disponível foi uma com representação pós fixa.
Assinale a alternativa que apresenta a sequência que deveria ser digitada pelo
professor para conseguir calcular a média de um aluno.
As filas sequenciais são estruturas de dados utilizadas em diversas aplicações, tais como fila de
processo, fila de impressão, sistemas de senha etc. Entretanto, nas aplicações onde há muita
movimentação de dados, inserções e remoções de dados na fila, surgem espaços ociosos que podem
levar ao fenômeno chamado de esgotamento de memória. Para sanar este problema pode-se substituir
a fila sequencial por:
lista circular
lista sequencial
fila circular
pilha sequencial
pilha circular
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
Variável
Endereço
Ponteiro
Vetor
SEGUNDA AV
Tipo de Avaliação: AV
Aluno:
Considere uma lista não ordenada de códigos espiões usados por Sherlock Silva.
Ajude-o a encontrar um determinado código c, realizando uma busca de acordo com o
seguinte protótipo:
int pesquisar(int v[ ], int c, int n);
Note : v é o vetor de códigos, c é o código a ser procurado e n é a quantidade de códigos
existentes em v.
Resposta: int pesquisar(int v[], int c, int n){ int i; for(i=0;i<n;i++){ if(v[i]==c){cout<<"CODIGO
ENCONTRADO";cout<<v[i];}} }
Gabarito:
Faça uma função em C++ para criar uma lista duplamente encadeada com um nó e
armazenar neste nó o valor 100. Note que deverá ser retornado o ponteiro para o nó
criado. Considere
struct nodupla {
int dado;
};
Gabarito:
nodupla *cria()
{
nodupla *novo;
I Algumas aplicações da estrutura de dados grafo são: Diagrama de Entidade Relacionamento e Redes de
computadores.
II E IV são verdadeiras
I , II e IV são verdadeiras
I e V são verdadeiras
II e V são verdadeiras
III e V são verdadeiras
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");
}
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
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.
Seleção
Bolha
Quicksort
Inserção
Heapsort
7a Questão (Ref.: 201110284323) Pontos: 0,0 / 0,5
struct Pilha {
int v[n], topo;
};
if (F.fim == n - 1)
else {
F.fim++;
F.v[F.fim] = valor;
}
}
if (fim == n - 1)
else {
fim++;
v[fim] = valor;
if (F.fim == n - 1)
else {
F.fim++;
F.v[F.fim] = valor;
if (F.fim == n - 1)
else
F.v[F.fim] = valor;
if (F.fim == n)
else {
F.fim++;
F.v[F.fim] = valor;
}
10a Questão (Ref.: 201110079582) Pontos: 0,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.
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.
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:
Tipo de Avaliação: A V 2
Aluno:
Nota da Prova: 8,0 de 8,0 Nota do Trabalho: Nota de Participação: 0 Data: 06/ 06/ 2013 15:21:31
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.
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.
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
a
1 Questão (Cód.: 95280) Pontos: 1,0 / 1,0
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
a
10 Questão (Cód.: 27963) Pontos: 0,0 / 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;
};
...
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
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:
Gabarito Comentado
A forma correta para imprimir o valor do último elemento de um vetor v com n posições é:
As estruturas de dados podem ser caracterizadas como sendo uma forma organizada de armazenar dados ou
informações na memória, de modo a otimizar o acesso a estes. Muitas vezes existem algoritmos de manipulação
de dados associados a estas estruturas.
Verifique as seguintes sentenças:
I-Filas são estruturas que recuperam os dados na ordem direta em que estes foram armazenados.
II-As Pilhas são estruturas que recuperam os dados na ordem reversa em que estes foram armazenados.
III-As Pilhas são estruturas que recuperam os dados na ordem direta em que estes foram armazenados.
IV-As Filas são estruturas que recuperam os dados na ordem reversa em que estes foram armazenados.
Marque a alternativa CORRETA:
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.
É 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.
Gabarito Comentado
Gabarito Comentado
Os irmãos Silva irão viajar por vários países da Europa e por isso, traçaram no mapa o percurso que farão, de cidade
a cidade. Qual a estrutura de dados mais adequada para modelar este problema ?
Fila
Árvore
Pilha
Lista
Grafo
As estruturas de dados são utilizadas para manter dados ou informações organizados na memória, o que
possibilita a otimização do uso destes dados. Porém, as estruturas guardam características especiais na
manipulação destes dados, assim deve-se escolher a estrutura certa ou mais adequada para uma determinada
aplicação. Portanto marque a opção que representa a melhor estrutura, quando se tem como requisitos
principais o acesso aleatório aos dados e alocação destes de forma contínua na memória.
Pilha Encadeada
Lista Sequencial
Pilha Sequencial
Lista Encadeada
Fila Sequencial
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.
Permitem agregar mais do que um valor em uma variável, existindo uma relação estrutural entre seus
elementos.
Também são denominados tipos primitivos, não é possível decompor em partes menores.
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.
São tipos de dados indivisíveis.
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
Global
Real
Constante
Inteiro
Gabarito Comentado
Gabarito Comentado
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.
Gabarito Comentado
Blocos únicos de códigos que realizam diversas tarefas distintas são de difícil manutenção. Portanto, utiliza-se a
técnica da modularização de programas, a fim de facilitar a implementação e a manutenção dos programas.
Esta técnica tem como principal elemento:
As funções
Os Vetores
As Filas
Os Grafos
As Estruturas de Dados
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 valor.
Registro.
Envio de inteiro.
Passagem por valor.
Ponteiros.
Gabarito Comentado
número
valor
caracter
void
referência
Blocos únicos de códigos que realizam diversas tarefas distitintas são de dificil manutenção. Portanto, utiliza-se
a tecnica da modularização de programas, a fim de facilitar a implementação e a manutenção dos programas.
Esta técnica, também chamada de modularização, tem como principal elemento:
As Estruturas de Dados
Os Grafos
As funções
Os Vetores
As Filas
Uma função possui um valor de retorno inteiro, recebe por valor um inteiro como primeiro parâmetro e por
referência um inteiro como segundo parâmetro. Qual das respostas abaixo poderia representar o protótipo
dessa função:
Vetor
Loop
Fila
Pilha
Registro
Gabarito Comentado
Pode-se definir uma estrutura heterogênea como sendo um conjunto de elementos, geralmente,
agrupados sob uma lógica e associados por um nome.
Esses elementos podem ser variáveis simples, matrizes ou ainda outras estruturas. Seja a definição de
uma estrutura como:
struct aluno {
string nome;
float nota;
};
Marque a alternativa em que é atribuída de forma correta a nota 5.7 para o décimo primeiro elemento
deste vetor.
vet[10]=aluno.5.7;
aluno.vet[10].nota=5.7;
vet[10].nota=5.7;
aluno.vet[10]=5.7;
vet[10].aluno.nota=5.7 ;
struct Livro {
int codigo;
float preco;
} liv;
Livro.codigo = 12345;
liv.preco = 30.70;
liv->preco = 30.70;
Livro.liv.codigo = 12345;
Livro->liv.codigo = 12345;
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?
Gabarito Comentado
Cada elemento da struct é denominado membro ou campo, sendo que a struct pode
armazenar elementos de tipos diferentes ou não.
Não é possível criar um vetor de structs, pois o vetor trabalha apenas com dados do
mesmo tipo.
Cada elemento da struct é chamado campo e cada campo deve ser, obrigatoriamente,
de um tipo de dados distinto de outro campo.
Gabarito Comentado
6a Questão (Ref.: 201609718754) Fórum de Dúvidas (0) Saiba (0)
Pode-se definir uma estrutura heterogênea como sendo um conjunto de elementos, geralmente, agrupados sob
uma lógica e associados por um nome. Esses elementos podem ser variáveis simples, matrizes ou ainda outras
estruturas. Seja a definição de uma estrutura como: struct aluno { string nome; float media; }; Suponha ainda
que exista um vetor desta estrutura, definido como: aluno vet [ 10]; Marque a alternativa em que é atribuída de
forma correta a media 6.0 para o quarto elemento deste vetor.
vet[3].aluno=6.0;
aluno[3].media=6.0;
aluno[3].10=6.0;
aluno[10]=6.0;
vet[3].media=6.0;
Pode-se definir uma estrutura heterogênea como sendo um conjunto de elementos, geralmente, agrupados sob
uma lógica e associados por um nome.
Esses elementos podem ser variáveis simples, matrizes ou ainda outras estruturas. Seja a definição de uma
estrutura como:
struct aluno {
string nome;
float nota;
};
Marque a alternativa em que é atribuída de forma correta a nota 5.7 para o décimo primeiro elemento deste
vetor.
vet[10]=aluno.5.7;
aluno.vet[10].nota=5.7;
vet[10].aluno.nota=5.7 ;
aluno.vet[10]=5.7;
vet[10].nota=5.7;
Em relação à classificação do método de ordenação, assinale abaixo aquele que, durante o processo de
ordenação, só usa a memória principal:
Ordenação Eficiente
Ordenação Simples
Ordenação Simples Externa
Ordenação Interna
Ordenação Externa
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 é:
Pesquisa binária
Pesquisa sequencial
Bolha
Inserção
Seleção
Gabarito Comentado
Sabendo-se que o método de ordenção bolha ou bubble sort realiza a troca de elementos adjacentes até que
todos os elementos de um vetor esteja ordenado. Então, se submetermos a sequencia de inteiros armazenada
em um vetor inicialmente na seguinte ordem : 4, 2, 5, 1.
Pode-se dizer que quando o maior elemento do vetor alcançar sua posição final, a ordenação apresentada no
vetor é:
2,1,4,5
1,4,2,5
2,4,1,5
4,1,2,5
1,2,4,5
Gabarito Comentado
int i , // índice
trocou = true,
fim = n - 1;
while (trocou)
aux = v[i];
v[i] = v[i+1];
v[i+1] = aux;
} // fim if
} // fim for
} // fim while
} // fim da função
Shellsort
Heapsort
Quicksort
Mergesort
Bublesort
Gabarito Comentado
Gabarito Comentado
Seleção
Binária
Inserção
Bolha
Hash
Gabarito Comentado
8a Questão (Ref.: 201609151954) Fórum de Dúvidas (1 de 1) Saiba (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".
Inserção
Seleção
Bolha
QuickSort
MergeSort
__________________________ é uma lista linear em que a alocação de memória pode ser estática, e que a
forma de armazenamento é contígua ou sequencial na memória. Usamos este tipo de lista quando se tem em
mente um tamanho pré-definido, ou seja, quando se sabe até onde a lista pode crescer.
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
Registro
Vetor
Matriz
Função
Gabarito Comentado
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:
Gabarito Comentado
Gabarito Comentado
Considere uma lista com n livros, em que cada livro é modelado pela struct :
struct Livro {
string titulo, editora, autor;
float preco;
};
A função X abaixo
void X (Livro v[ ], int &n, Livro L)
{
v[n] = L;
n++;
cout << "Operação realizada com sucesso.";
}
implementa a operação de :
Busca
Inserção
Substituição
Ordenação por inserção
Inicialização
Gabarito Comentado
As estruturas de dados são utilizadas para manter dados ou informações organizados na memória, o que
possibilita a otimização do uso destes dados. Porém, as estruturas guardam características especiais na
manipulação destes dados, assim deve-se escolher a estrutura certa ou mais adequada para uma determinada
aplicação. Portanto marque a opção que representa a melhor estrutura, quando se tem como requisitos
principais o acesso aleatório aos dados e alocação destes de forma contínua na memória.
Fila Sequencial
Pilha Sequencial
Pilha Encadeada
Lista Encadeada
Lista Sequencial
Gabarito Comentado
O que acontece ao se inserir uma informação quando já usamos toda a área disponível do vetor (topo = fim)?
overflow
underflow
inclusão
remoção
ordenação
Gabarito Comentado
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.
Gabarito Comentado
Na pequena pizzaria de Dom Leopoldo os pedidos são anotados em uma planilha e assim que montam um lote
com 5 pizzas, as entregas começam. As pizzas são organizadas no veículo de entrega respeitando a ordem da
entrega, ou seja, a 1a. pizza a ser entregue fica na frente de todas e assim, sucessivamente. Dessa forma, a
última pizza a ser entregue ficará no final do veículo, após todas as outras pizzas. Qual a estrutura de dados é
mais adequada para modelar a organização das pizzas no veículo de entrega ?
lista
grafo
árvore
pilha
fila
Gabarito Comentado
A estrutura de dados do tipo pilha (stack) é um tipo abstrato de dado baseada no princípio:
Da indiferença.
First In First Out (FIFO).
Last In First Out (LIFO).
De dividir para conquistar.
Da localidade de referência.
Gabarito Comentado
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.
Vetor.
Lista circular.
Fila.
Pilha.
Gabarito Comentado
As pilhas sequenciais são estruturas que guardam a ordem reversa dos dados nelas armazenados, e isto em
muitas ocasiões é muito vantajoso. A operação usada para inserir um elemento X numa pilha é conhecida
na literatura como PUSH (X). Para remover um elemento de uma pilha a operação é o POP( ). Assim estas
duas funções devem implentar o algoritmo LIFO (Last In - First Out ) ou o último a entrar é o primeiro a
sair. Sendo assim se aplicarmos as seguintes operações em uma PILHA vazia:
PUSH(10),PUSH(5),POP(),PUSH(7),POP(),PUSH(2),POP(),POP( ).
Apenas o 2
Nenhum, a pilha estará vazia.
10 e 2
Apenas o 10
7e2
Gabarito Comentado
Um programador recebeu a tarefa de construir um programa que receba uma cadeia de caracteres e verifique
se esta cadeia de caracteres é um PALÍNDROME, sabendo-se que um PALÍNDROME apresenta a mesma
sequência de caracteres da esquerda pra direita, quanto da direita para esquerda, marque a opção que possui a
estrutura de dados mais adequada a este programa.
Pilha Sequencial
Fila Sequencial
Árvores
Grafos
Lista Sequencial
Gabarito Comentado
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;
HEAP e POP;
Base e Topo;
PUSH e POP.
PULL e POP;
Gabarito Comentado
Observe a função que manipula uma pilha e assuma que TAM é uma constante definida com valor 5. Saiba
que o nome da função já explícita a finalidade dela.
Considere a chamada da função conforme linha abaixo, sabendo-se que vet é um vetor de tamanho 5 e que
não tem nenhum valor ainda:
Analise as afirmativas abaixo que sugerem correções, ou não, na definição na função e assinale a opção
que contem as afirmativas corretas.
I Faltou & antes da variável vetor e irá acusar erro.
II A variável topo está sem tipo.
III O teste está correto porque o índice do primeiro elemento do vetor em C++ é 1, obrigatoriamente.
IV Na linha comentada deveria estar presente um comando de atribuição que decrementaria a variável topo.
V A linha vetor[topo]=valor; está correta.
Gabarito Comentado
Seja S uma pilha inicialmente vazia. Primeiramente, o elemento A é inserido em S. Em seguida, o elemento B, e
assim por diante, até a inclusão final do elemento E. Ao término dessas operações, qual elemento estará no
topo de S?
C.
B.
D.
A.
E.
Usa-se um vetor para se implementar uma fila sequencial, entretanto se nesta estrutura ocorrer diversas
operações de remoção e inserção podemos afirmar que:
A estrutra sofrerá do fenômeno chamado esgotamento de memória e logo não poderá mais ser
utilizada. A solução é o uso da fila circular.
Um vetor não pode ser usado na implementação de uma fila sequencial apenas em pilhas sequenciais.
A estrutra sofrerá do fenômeno esgotamento de memória, mas se os dados estiverem ordenados isto
não afetará a estrutura.
Um vetor é uma estrutura base correta para esta implementação, já que está imune a fenômenos como
esgotamento de memória.
A estrutura fila não sofre esgotamento de memória, isto ocorre com as pilhas já que implementam o
algoritmo LIFO.
Assumindo que estamos com uma estrutura de dados do tipo FIFO, as operações abaixo vão resultar em que
elementos na mesma: ENFILEIRAR(4), ENFILEIRAR(5), ENFILEIRAR(6), DESENFILEIRAR(), DESENFILEIRAR(),
ENFILEIRAR(5), ENFILEIRAR(7), DESENFILEIRAR()
57
75
467
45
456
As filas sequenciais são estruturas de dados utilizadas em diversas aplicações, tais como fila de
processo, fila de impressão, sistemas de senha etc. Entretanto, nas aplicações onde há muita
movimentação de dados, inserções e remoções de dados na fila, surgem espaços ociosos que podem
levar ao fenômeno chamado de esgotamento de memória. Para sanar este problema pode-se substituir
a fila sequencial por:
lista sequencial
fila circular
lista circular
pilha circular
pilha sequencial
Gabarito Comentado
Um banco adotou dois sistemas de senhas para atender os cidadãos na ordem de chegada. O sistema I atende
todas pessoas que não possuem atendimento prioritário. O sistema II atende somente pessoas com
atendimento prioritário. Nessa situação,
Tanto o sistema I, quanto o II, adota o esquema lista duplamente encadeada de organização de
dados.
Tanto o sistema I, quanto o II, adota o esquema FIFO de organização de dados.
Tanto o sistema I, quanto o II, adota o esquema LIFO de organização de dados.
O sistema I adota o esquema LIFO de organização de dados e o II o esquema FIFO.
O sistema I adota o esquema FIFO de organização de dados e o II, o esquema LIFO.
As estruturas de dados podem ser do tipo estática e dinâmica. As listas são estruturas parecidas com vetores
podendo ser do tipo dinâmica. Entretanto, existem várias implementações de estruturas do tipo listas. Dessa
forma, a estrutura que para o acesso de um dado, este precisa estar na saída, caso contrário, precisa remover
os elementos a sua frente, é chamada de:
Matriz
Struct
Pilha
Fila
Bolha
Gabarito Comentado
Considere uma fila simples F de inteiros, do tipo Fila definido abaixo. Tal fila deverá armazenar códigos de agentes de uma
firma de espionagem, desde que haja espaço para um novo agente. Assinale a opção que corretamente desenfileira o código
de um agente, sabendo que a fila F foi inicializada de acordo com o trecho de código abaixo.
Fila F;
F. inicio = 0;
F.fim = -1;
else {
F.inicio++;
F.inicio++;
void desenfileirar(Fila F) {
F.inicio--;
else {
void desenfileirar(Fila F) {
else {
F.inicio++;
}
Gabarito Comentado
Um aluno do EAD estava estudando para a prova de Estrutura quando viu o trecho
do programa abaixo em uma apostila.
Como não estava com seu micro, começou a analisar a função entra(...), ficando
atento a alguns membros da struct.
Quando finalizou, virou a página da apostila e viu a resposta. Então, ficou muito
feliz por ter identificado a estrutura
Gabarito Comentado
D
C
X
W
A
Prezado (a) Aluno(a),
Você fará agora seu EXERCÍCIO DE FIXAÇÃO! Lembre-se que este exercício é
opcional, mas não valerá ponto para sua avaliação. O mesmo será composto de
questões de múltipla escolha (3).
2. Dr. Pei Tam possui uma lista não ordenada de pacientes de seu consultório em
que registra apenas o nome endereço e o telefone de cada paciente. Como
não há limites para o crescimento de sua lista, como se pode implementar a
inserção de um novo paciente na lista, sabendo que cada paciente é do tipo
Paciente e a lista é do tipo List assim definidos :
struct Paciente {
};
struct List {
Paciente p;
};
Paciente pat;
novo->p = pat;
novo->link = i;
return novo;
novo->p = pt;
novo->link =i;
return novo;
List *novo ;
novo->p = pt;
novo->link = i;
return novo;
}
List * inserePac(List *i, Paciente pac)
novo.p = pac;
novo.link = i;
return novo;
List novo[];
novo[0].p = pac;
novo[0].link = i;
return novo;
Gabarito Comentado
3. Montei uma biblioteca popular que aceita doações sem limites. Marque a opção que
especifica o tipo de lista e o tipo de alocação de memória mais adequados para este
problema.
Gabarito Comentado
4. Assumindo que um valor do tipo inteiro ocupa 4 bytes na memória, e se baseando nas
linhas de código abaixo, marque a alternativa correta:
int *p;
p = (int *)malloc(20*sizeof(int));
A operação é inválida
Gabarito Comentado
Intercalar a ordem dos dados da lista do final para o início, atualizando a lista.
Alterar a ordem dos dados da lista do final para o início, atualizando a lista.
Juntar duas listas, colocando uma lista no final de outra, obtendo, ao final, uma só
lista resultante.
Consiste em dividir a lista em duas outras listas. A quantidade de nós que cada lista
terá, depende da necessidade.
Organizar os dados da lista em ordem crescente ou decrescente.
Gabarito Comentado
O ponteiro do "primeiro" nó não é NULL, mas sim aponta de volta para o "primeiro"
nó da lista, formando um ciclo.
Cada ponteiro possui um só endereço que referencia o primeiro nó da lista.
O ponteiro do "último" nó não é NULL, mas sim aponta de volta para o "primeiro" nó
da lista.
Gabarito Comentado
8. Considere
ptr = &a;
qtr = &b;
++(*qtr);
r = qtr;
qtr = ptr;
30 20 0 30 21
30 30 21 30 21
30 21 21 10 20
30 20 20 10 20
30 30 21 10 20
1. Assinale a opção correta. Sobre pilha dinâmica podemos afirmar que
:
Gabarito Comentado
struct nodo
{
int info;
struct nodo *prox;
};
InsereNoFim
InsereNoFrente
BuscaNaLista
ListaNo
RemoveNo
Gabarito Comentado
3. Sobre uma estrutura de dados do tipo LIFO, observe as seguintes afirmações:
(1) É uma pilha.
(2) Pode ser uma fila com prioridades
(3) É uma estrutura onde o primeiro elemento a entrar é o último a sair.
struct no {
int dado;
struct no *link;
};
Gabarito Comentado
I if (ptr !=NULL)
II if( !ptr )
III if(ptr)
IV while (ptr !=NULL)
V while (ptr)
IV e V estão corretas.
I e IV estão corretas
III está correta
III e V estão corretas
I e II estão corretas.
Gabarito Comentado
7. Sabendo que uma fila encadeada possui seus nós definidos pela :
struct no {
int x;
no *prox;
};
p *no=new no;
no *p=new no;
Gabarito Comentado
frente, apenas.
trás, apenas.
Gabarito Comentado
struct nodupla {
int dado;
struct nodupla *dlink; // aponta p/ o nó à
direita
struct nodupla *elink; // aponta p/ o nó à
esquerda
};
nodupla *novo;
nodupla *novo;
nodupla *novo;
n nodupla *novo;
nodupla *novo;
Gabarito Comentado
trás, apenas.
frente, apenas.
Gabarito Comentado
pY->proximo = pX;
pX->anterior = pY;
pX->proximo = pZ->proximo;
pZ->proximo->anterior = pX;
pZ->proximo = pY;
pY->anterior = pZ;
Y, antes do Z, e X, antes do Y.
Gabarito Comentado
Gabarito Comentado