Questões de Concurso Comentadas sobre algoritmos e estrutura de dados

Foram encontradas 2.520 questões

Q3330088 Algoritmos e Estrutura de Dados
Considere as afirmativas abaixo sobre estruturas de dados homogêneas e heterogêneas, incluindo vetores e matrizes, registros, listas, filas, pilhas e árvores, métodos  busca e ordenação, e recursividade. Sobre o assunto, julgue as seguintes afirmações como verdadeiras (V) ou falsas (F):

(__)Em uma árvore binária de busca, o valor de cada nó à esquerda de um nó raiz é menor ou igual ao valor do nó raiz, e o valor de cada nó à direita é maior ou igual.
(__)A busca binária pode ser aplicada eficientemente em listas não ordenadas.
(__)Em uma pilha, a operação de inserção (push) ocorre no início da estrutura e a operação de remoção (pop) ocorre no final.

Assinale a alternativa cuja respectiva ordem de julgamento esteja correta:
Alternativas
Q3328451 Algoritmos e Estrutura de Dados

Analise as afirmativas abaixo sobre Máquina de Turing e linguagens:



I. Toda linguagem recursivamente enumerável é também uma linguagem regular, pois pode ser aceita por uma máquina de Turing não-determinística.


II. A união de duas linguagens recursivas é uma linguagem recursiva.


III. III O problema da parada pode ser resolvido por uma máquina de Turing determinística, desde que tenha uma quantidade de fita infinita disponível.


IV. Toda linguagem recursiva também é recursivamente enumerável.



Está(ão) correta(s) a(s) afirmação(ões):

Alternativas
Q3328450 Algoritmos e Estrutura de Dados
Considere a linguagem L com alfabeto {0,1} definida como a linguagem das palavras binárias que possuem um número par de 1s. Considere essas informações e julgue as afirmativas abaixo:

I. L é uma linguagem regular.
II. É possível construir um autômato finito determinístico (DFA) que reconhece a linguagem L.
III. A linguagem L não pode ser denotada por uma expressão regular.
IV. A linguagem L pertence à classe de linguagens livres de contexto, mas não à classe de linguagens regulares.

Está(ão) correta(s) a(s) afirmação(ões): 
Alternativas
Q3328449 Algoritmos e Estrutura de Dados

Considere um autômato finito determinístico (AFD) A=(Q,Σ,δ,q0,F), onde:



• Q={q0,q1,q2} é o conjunto de estados.


• Σ={a,b} é o alfabeto.


• A função de transição δ é definida da seguinte maneira:



• δ(q0,a)=q1


• δ(q0,b)=q0


• δ(q1,a)=q1


• δ(q1,b)=q2


• δ(q2,a)=q1


• δ(q2,b)=q0



• O estado inicial é q0.


• O conjunto de estados de aceitação é F={q1}.



Qual das seguintes expressões descreve corretamente a linguagem reconhecida pelo autômato A? 

Alternativas
Q3328442 Algoritmos e Estrutura de Dados
Considere um grafo não direcionado e ponderado, representado por G = (V,E), onde V é o conjunto de vértices e E é o conjunto de arestas com pesos positivos. Você precisa encontrar o caminho mais curto de um vértice s para todos os outros vértices do grafo. Qual dos seguintes algoritmos é mais eficiente para resolver esse problema, considerando que o grafo pode conter ciclos e as arestas possuem apenas pesos positivos?
Alternativas
Q3328441 Algoritmos e Estrutura de Dados
Considere um arranjo (vetor) de inteiros com n elementos que está quase ordenado (isto é, apenas alguns elementos estão fora de ordem). Sabendo disso, você deseja escolher o algoritmo de ordenação que seja mais eficiente neste cenário. Qual das seguintes alternativas apresenta o melhor algoritmo de ordenação a ser escolhido para ordenar um arranjo (vetor) quase ordenado, em termos de desempenho esperado?
Alternativas
Q3328440 Algoritmos e Estrutura de Dados
Os algoritmos QuickSort e MergeSort são conhecidos algoritmos de ordenação e que apresentam um bom desempenho. Em relação as diferenças entre os dois algoritmos é correto afirmar:
Alternativas
Q3322953 Algoritmos e Estrutura de Dados
Ao processar uma função recursiva, por padrão, as chamadas recursivas são armazenadas na estrutura de dados:
Alternativas
Q3321330 Algoritmos e Estrutura de Dados
Matrizes são estruturas de dados muito úteis fornecidas nas linguagens de programação. No entanto, elas têm, pelo menos, duas limitações: (1) seu tamanho tem de ser conhecido no momento da compilação, e (2) os dados de uma matriz estão separados na memória do computador pela mesma distância, o que significa que inserir um item dentro da matriz exige que outros dados, nessa matriz, sejam movidos.
Fonte: DALE, Nell; LEWIS, John. Ciência da computação. 4. ed. Rio de Janeiro: LTC, 2010, p. 67.

Considerando o contexto descrito e a importância de programadores buscarem otimizar o desempenho dos programas que escrevem, considere as assertivas apresentadas a seguir:

I. As limitações apresentadas não podem ser superadas por meio da utilização de estruturas de dados ligadas.

PORQUE
II. Uma estrutura de dados ligadas é uma coleção de nós, que armazenam dados, e de ligações com os outros nós.

A respeito dessas assertivas, assinale a alternativa CORRETA.
Alternativas
Q3321319 Algoritmos e Estrutura de Dados
Em programação, trabalha-se constantemente com grandes quantidades de dados armazenados em arrays e, nesse contexto, pode ser necessário determinar se um array contém um valor que combina com um certo valor de chave. O processo de encontrar determinado elemento de um array é chamado pesquisa.
Fonte: DEITEL, Paul; DEITEL, Harvey. C: como programar. 6. ed. São Paulo: Pearson Prentice Hall, 2011, p.184. 

Considerando o contexto da pesquisa em arrays, relacione a segunda coluna à primeira. 

1. Pesquisa sequencial
2. Pequisa binária
3. Hashing

( ) Tem como principal vantagem a simplicidade e, como principal desvantagem, o custo elevado.
( ) Tem como principal vantagem a eficiência e, como principal desvantagem, o fato de não recuperar em ordem alfabética.
( ) Tem como principal vantagem a eficiência e, como principal desvantagem, a necessidade de o array estar ordenado.

Assinale a alternativa que apresenta a sequência CORRETA, considerando a relação estabelecida de cima para baixo. 
Alternativas
Q3313536 Algoritmos e Estrutura de Dados

Uma estrutura de dados é um modo de armazenar, organizar e acessar dados em um sistema de maneira mais eficaz e otimizada. Esse conceito da ciência da computação é essencial para profissionais de dados, como desenvolvedores de software ou cientistas de dados, uma vez que auxilia o processamento de dados, permitindo a operação dos algoritmos sobre eles de modo mais eficiente e adequado. Avalie as afirmativas a seguir, as quais contêm os principais tipos de estrutura de dados usados.



I- Estruturas estáticas que possuem um tamanho fixo pré-determinado, no momento da criação, que não pode ser alterado.


II- Estruturas de dados que trabalham com as extremidades e com a priorização da ordem dos elementos, usam o conceito first in, first out (FIFO), que em tradução literal quer dizer “primeiro a entrar, primeiro a sair”.


III- Estruturas que atendem ao princípio last in, first out (LIFO), que significa que o último elemento a ser empilhado é o primeiro a ser removido. Esse tipo de estrutura de dados é ideal para quando se quer priorizar a remoção de um elemento adicionado por último na estrutura.


IV- Estruturas que adotam um formato hierárquico para representar os elementos da coleção de dados, por isso são consideradas mais complexa do que outros formatos, já que são não linear e possuem bastantes variáveis.



Assinale a alternativa que apresenta a sequência CORRETA, considerando as afirmativas de cima para baixo.

Alternativas
Q3268805 Algoritmos e Estrutura de Dados
Em uma árvore binária de busca (BST), a afirmação que é verdadeira para todos os nós é
Alternativas
Q3268804 Algoritmos e Estrutura de Dados
Assinale a alternativa que apresenta a situação em que a recursividade pode ser menos eficiente que a iteração.
Alternativas
Q3258995 Algoritmos e Estrutura de Dados
Considerando a escrita de algoritmos no software VisuAlg 3.0, qual das alternativas abaixo corresponde à declaração de uma variável de 20 posições?
Alternativas
Q3237770 Algoritmos e Estrutura de Dados
O Bubble Sort, também conhecido como método bolha, é um algoritmo utilizado para organizar uma sequência de números ou outros elementos em ordem crescente ou decrescente. A implementação percorre a sequência de itens ordenáveis e faz a troca, quando necessária. Nesse sentido, para ordenar, de modo crescente, o array {11, 5, 7, 3, 2, 1}, utilizando o método bolha, serão necessárias
Alternativas
Q3192645 Algoritmos e Estrutura de Dados
Em teoria dos grafos, uma árvore binária é definida como um grafo acíclico, conexo, dirigido onde todos os nós têm grau: 
Alternativas
Q3192644 Algoritmos e Estrutura de Dados
Em Estrutura de dados um conjunto ordenado de itens a partir do qual podem ser extinguidos itens em uma ponta e no qual podem ser inseridos itens na outra ponta, é denominado de: 
Alternativas
Q3172922 Algoritmos e Estrutura de Dados
Considere as definições de algoritmos determinísticos e não determinísticos e as classes de problemas P e NP. De acordo com Ziviani (2007), um problema pode ser classificado como pertencente à classe NP caso ______. Assinale a alternativa que preencha corretamente a lacuna.
Alternativas
Q3172921 Algoritmos e Estrutura de Dados
Considere o conceito de complexidade polinomial, definido como O(p(n)), onde p(n) é um polinômio e O representa o limite superior da complexidade de um algoritmo. Algoritmos que pertencem à classe P são aqueles que possuem soluções algorítmicas cuja complexidade é limitada por um polinômio de grau k, ou seja, O(nk) para alguma constante k.
Esse tipo de problema é considerado solucionável em tempo "razoável" ou eficiente. Dado esse contexto, analise as afirmativas a abaixo sobre a classe P e a complexidade polinomial.
I. Algoritmos de ordenação como a ordenação por inserção têm uma complexidade polinomial de O(n 2 ), o que os coloca na classe P.
II. A classe P engloba todos os problemas que podem ser resolvidos por algoritmos em tempo polinomial, independente de hardware.
III. Algoritmos de pesquisa binária, embora eficientes, não são classificados como pertencentes à classe P, pois sua complexidade é logarítmica, e não polinomial.
IV. Um algoritmo que possui uma complexidade de tempo O(n k ), onde k é constante, resolve o problema no pior caso em tempo polinomial e, portanto, pertence à classe P.
Estão corretas as afirmativas:
Alternativas
Q3171162 Algoritmos e Estrutura de Dados
Matrizes são estruturas de dados bidimensionais que armazenam dados em um formato de tabela com linhas e colunas e tabela de dados. Trata-se de uma tabela com dados organizados por colunas, onde cada coluna é um vetor. Assinale a alternativa que apresenta o porquê uma tabela de dados pode ser mais flexível do que uma matriz em termos de tipos de dados.
Alternativas
Respostas
301: C
302: C
303: A
304: D
305: D
306: C
307: B
308: B
309: A
310: B
311: A
312: E
313: C
314: C
315: A
316: B
317: A
318: B
319: A
320: B