Questões de Concurso Comentadas sobre algoritmos e estrutura de dados
Foram encontradas 2.520 questões
Considere árvores B não vazias, com grau mínimo t ≥ 2. Para árvores B+, adote a convenção usual de sistemas de indexação: todas as chaves de dados permanecem nas folhas, enquanto os nodos (nós) internos armazenam apenas chaves separadoras; todas as folhas estão na mesma profundidade. Nesse contexto, analise as assertivas a seguir:
I. Em uma árvore B de grau mínimo t, todo nodo não raiz armazena entre t−1 e 2t−1 chaves; a raiz armazena entre 1 e 2t−1 chaves.
II. A altura de uma árvore B aumenta somente quando a raiz é dividida e diminui somente quando, após uma fusão, uma raiz interna fica sem chaves e é substituída por seu único filho.
III. Na inserção em uma árvore B+, a divisão de uma folha cheia remove da folha a chave separadora promovida ao pai, exatamente como ocorre na divisão de um nodo em uma árvore B convencional.
IV. A altura h de uma árvore B de grau mínimo t, com n chaves, satisfaz h ≤ logt((n+1)/2). Para t=500 e n=10⁹, conclui-se que h ≤ 3; ou seja, o caminho da raiz até uma folha contém no máximo 4 nodos.
Assumindo um nodo por página de disco e a raiz residente em memória principal, uma busca exige, no máximo, 3 acessos a disco.
Quais estão corretas?
I.Um algoritmo pode ser entendido como uma sequência organizada de passos destinada a resolver um problema ou executar uma tarefa computacional, podendo ser descrito por diferentes representações, como linguagem natural estruturada, pseudocódigo ou fluxogramas.
II.Fluxogramas utilizam símbolos gráficos padronizados para representar operações, decisões e fluxos de controle, permitindo visualizar a lógica de execução de um processo antes ou durante sua implementação em código.
III.O processo de depuração envolve a análise do comportamento de um programa ou algoritmo com o objetivo de localizar e corrigir falhas lógicas ou erros de implementação que afetam o resultado esperado.
IV.Em algoritmos estruturados, estruturas de decisão e repetição são utilizadas para controlar o fluxo de execução, permitindo que determinadas instruções sejam executadas de acordo com condições previamente avaliadas.
V.A etapa de depuração consiste apenas na tradução direta do algoritmo para uma linguagem de programação específica, sem envolver análise do comportamento do programa durante sua execução.
Com base nas afirmativas apresentadas, assinale a alternativa CORRETA:
Estruturas de dados são importantes na construção de sistemas computacionais. Conforme o tema, analise as sentenças a seguir:
I- Em uma implementação de pilha baseada em vetor, a operação de remoção do elemento do topo exige, necessariamente, o deslocamento de todos os demais elementos para preservar a disciplina LIFO.
PORQUE
II- Na pilha, o elemento removido é o último que foi inserido, razão pela qual a operação de remoção deve ocorrer sobre a extremidade lógica denominada topo.
Analisadas as sentenças, assinale a alternativa CORRETA:
Assinale a alternativa que completa corretamente as lacunas abaixo.
Na unidade de ponto flutuante, a operação para colocar um
valor na pilha é chamada __________ , sendo equivalente à
instrução __________.
Uma equipe de desenvolvimento está revisando trechos de código de um sistema interno responsável pelo controle de requisições administrativas. Durante a análise técnica, foram discutidos aspectos relacionados à construção de algoritmos, estrutura de decisão, repetição, modularização e análise de complexidade.
Com base em fundamentos de desenvolvimento de sistemas e lógica de programação, analise as assertivas a seguir e assinale V (verdadeiro) ou F (falso):
(__) Um algoritmo pode ser descrito em linguagem natural estruturada, pseudocódigo ou fluxograma, desde que represente uma sequência finita e ordenada de passos para resolução de um problema.
(__) A utilização de estruturas de repetição, como "para" ou "enquanto", elimina a necessidade de estruturas condicionais dentro do mesmo bloco lógico.
(__) A modularização de um sistema tende a favorecer manutenção e reutilização de código, especialmente quando há definição clara de responsabilidades entre funções ou métodos.
(__) Um algoritmo cuja complexidade de tempo é O(n²), quando o número de operações executadas cresce proporcionalmente a n2, necessariamente apresentará desempenho inadequado para qualquer volume de dados.
(__) Na lógica de programação, variáveis são utilizadas para armazenar valores que podem ser modificados durante a execução do algoritmo.
(__) A validação de entradas de dados contribui para reduzir falhas decorrentes de estados inesperados no fluxo de execução.
Assinale a alternativa que possui a sequência correta de V (verdadeiro) e F (falso) de cima para baixo:
Durante a modernização de um sistema interno de protocolo eletrônico, a equipe técnica avaliou diferentes estruturas de dados para atender a requisitos específicos: controle de requisições em ordem de chegada, armazenamento dinâmico de registros, pesquisa eficiente por chave identificadora e organização hierárquica de setores administrativos. Considerando conceitos clássicos de estruturas de dados, analise as afirmativas a seguir:
I. Tabelas hash garantem tempo constante de busca independentemente da função de dispersão adotada e da ocorrência de colisões.
II. Filas implementam política do tipo FIFO (First In, First Out), sendo adequadas para controle de processamento em ordem cronológica de chegada.
III. Listas encadeadas permitem inserções e remoções sem necessidade de deslocamento físico de elementos subsequentes, diferentemente do que ocorre em arranjos estáticos.
IV. Árvores binárias de busca mantêm ordenação baseada em relação entre chave do nó e seus descendentes, o que pode favorecer operações de busca quando a estrutura está balanceada.
V. Pilhas são estruturas apropriadas para modelar chamadas recursivas, pois operam segundo disciplina LIFO (Last In, First Out).
Assinale a alternativa CORRETA.
1. “O algoritmo __________ percorre repetidamente o vetor, comparando elementos adjacentes e realizando trocas sempre que eles se encontram fora de ordem, até que nenhuma troca adicional seja necessária.”
2. “No método __________, cada novo elemento é inserido na posição adequada dentro da porção já ordenada do vetor, promovendo deslocamentos sucessivos dos elementos maiores.”
3. “O algoritmo __________ caracteriza-se por selecionar, a cada iteração, o menor elemento da região ainda não ordenada e posicioná-lo no início dessa região.”
4. “A técnica conhecida como __________ baseia-se na escolha de um elemento de referência, a partir do qual os demais elementos são reorganizados em dois grupos, menores e maiores, repetindo-se o processo nas subdivisões resultantes.”
5. “O procedimento __________ divide o vetor em partes menores, ordena essas partes separadamente e, em seguida, combina os resultados em uma única sequência ordenada.”
Assinale a alternativa que completa, corretamente, as afirmativas anteriores.
Ainda sobre essas duas formas de implementação, dadas as afirmativas,
I. O algoritmo de busca binária tem o mesmo desempenho se implementado numa lista encadeada ou num vetor de posições, desde que os elementos estejam ordenados.
II. A lista encadeada evita desperdício de espaço em memória por superdimensionamento, uma vez que aloca memória por demanda de uso e não a priori.
III. Diferentemente da lista encadeada, numa lista com vetores, é possível acessar qualquer espaço da memória com o mesmo custo computacional.
verifica-se que está/ão correta/s
I. O cálculo de rota mais curta em redes complexas utiliza predominantemente o algoritmo de Dijkstra ou suas variações, como o A* (A-star).
II. Em aplicações logísticas, o geoprocessamento elimina completamente a necessidade de dados históricos de tráfego, pois os algoritmos de roteamento utilizam apenas a distância geométrica entre os pontos de origem e destino.
III. A análise de "Isócronas" permite visualizar em um mapa todas as áreas que podem ser alcançadas a partir de um ponto em um determinado intervalo de tempo (ex.: 15 minutos).
A sequência correta é
Analise as afirmativas abaixo com relação à estrutura de dados.
1. Pilhas são estruturas FIFO.
2. Filas são estruturas LIFO.
3. Listas encadeadas utilizam ponteiros.
4. Árvores são estruturas não lineares e hierárquicas.
Assinale a alternativa que indica todas as afirmativas corretas.
Analise as afirmativas abaixo com relação à estrutura de dados.
1. Pilhas são estruturas FIFO.
2. Filas são estruturas LIFO.
3. Listas encadeadas utilizam ponteiros.
4. Árvores são estruturas não lineares e hierárquicas.
Assinale a alternativa que indica todas as afirmativas corretas.
função buscaBinaria(vetor [], valor) inferior ← 0 superior ← N - 1 enquanto inferior <= superior { comando faltante se vetor[índice] == valor retornar índice senão se vetor[índice] < valor inferior ← índice + 1 senão superior ← índice - 1 } retornar -1
O algoritmo trabalha com valores do tipo inteiro e o vetor tem N elementos ordenados de forma crescente, com o índice do primeiro elemento sendo zero. O algoritmo retorna o valor do índice do vetor que contém o valor pesquisado, ou retorna -1, se o valor não for encontrado no vetor. Qual linha deve substituir o comando faltante no algoritmo para que ele implemente corretamente a busca binária?