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

Foram encontradas 1.164 questões

Q958884 Algoritmos e Estrutura de Dados
A função da Memoização na estratégia Top-Down para a solução de problemas, utilizando Programação Dinâmica, é implementar um algoritmo
Alternativas
Q958883 Algoritmos e Estrutura de Dados
Considerando os algoritmos de ordenação por comparação, o limite inferior para o pior caso desses algoritmos é
Alternativas
Q958882 Algoritmos e Estrutura de Dados

Considere a equação de recorrência abaixo.


T(n) = 0 para n = 1.

T(n) = 2T(n/2) + n – 1 para n > 1.


Após a resolução, a solução encontrada é

Alternativas
Q958881 Algoritmos e Estrutura de Dados
Para o método de ordenação Quicksort, a ordem de complexidade do pior caso e do caso médio, respectivamente, é
Alternativas
Q958880 Algoritmos e Estrutura de Dados

Utilize o método mestre para resolver recorrências das equações abaixo.


T1 (n) = 9T1 (n/3) + n

T2 (n) = T2 (2n/3) + 1


As ordens de complexidade correspondentes são

Alternativas
Ano: 2018 Banca: FCM Órgão: IFN-MG Prova: FCM - 2018 - IFN-MG - Professor - Informática |
Q958859 Algoritmos e Estrutura de Dados

Na tabela a seguir, considerando os métodos de ordenação, que visam a colocar uma lista em ordem para facilitar a busca de informações nela contidas, associe os métodos à sua respectiva descrição. 


Método de Ordenação

(1) Bubble Sort 

(2) Insert Sort 

(3) Select Sort

(4) Shellsort

(5) Mergesort 

(6) Quicksort 

(7) Heapsort


  Descrição

(  ) Neste método, a lista é subdividida em h-listas, as quais são ordenadas com um método de ordenação qualquer. Esse procedimento é repetido para valores decrescentes de h, sendo que o último valor de h tem que ser 1.

(  ) Neste método, são usados, inicialmente, os elementos da lista que são inseridos em um heap binário crescente. Em seguida, são feitas sucessivas remoções do menor elemento do heap, colocando os elementos removidos do heap de volta na lista. 

(  ) Neste método, a lista é dividida em duas metades. Essas metades são ordenadas recursivamente e depois são intercaladas. Para tanto, faz-se uso das variáveis i e j para percorrer a metade esquerda e a metade direita, respectivamente. Em cada iteração, compara-se o elemento na posição i com o elemento na posição j. O menor deles é copiado para um vetor auxiliar. Esse procedimento é repetido até que uma das duas metades tenha sido totalmente copiada para o vetor auxiliar.

(  ) Neste método, os elementos da lista são movidos para as posições adequadas de forma contínua. Se um elemento está inicialmente numa posição i e, para que a lista fique ordenada, ele deve ocupar a posição j, então ele terá que passar por todas as posições entre i e j. Em cada iteração do método, percorre-se a lista a partir de seu início, comparando cada elemento com seu sucessor, trocando-os de posição se houver necessidade.

(  ) Neste método, a lista é dividida em parte esquerda e parte direita, sendo que os elementos da parte esquerda são todos menores do que os elementos da parte direita. Em seguida, as duas partes são ordenadas recursivamente.

(  ) Neste método, considera-se que a lista está dividida em parte esquerda, já ordenada, e parte direita, em possível desordem. Além disso, os elementos da parte esquerda são todos menores ou iguais aos elementos da parte direita. Cada iteração consiste em escolher o menor elemento da parte direita (pivô) e trocá-lo com o primeiro elemento da parte direita. Com isso, a parte esquerda aumenta, pois passa a incluir o pivô, e a parte direita diminui.

(  ) Neste método, considera-se que a lista está dividida em parte esquerda, já ordenada, e parte direita, em possível desordem. Inicialmente, a parte esquerda contém apenas o primeiro elemento da lista. Cada iteração consiste em colocar o primeiro elemento da parte direita (pivô) na posição adequada da parte esquerda, de modo que a parte esquerda continue ordenada.

Tabela: métodos de ordenação

Fonte: Próprio autor


A sequência correta desta associação é 

Alternativas
Q957981 Algoritmos e Estrutura de Dados
Um sistema de informação é basicamente composto de dados e processos. É então preciso entender o negócio e mapear os processos antes de automatizá-los. A expressão abaixo que representa graficamente essa atividade é:
Alternativas
Ano: 2018 Banca: IF-MT Órgão: IF-MT Prova: IF-MT - 2018 - IF-MT - Informática |
Q952969 Algoritmos e Estrutura de Dados

Analise as afirmativas a seguir:


I - Um algoritmo possui uma sequência finita de instruções ou operações básicas, não ambíguas, executáveis em um tempo finito e que resolve um problema computacional em qualquer uma de suas instâncias.

II - A eficiência de um programa é avaliada em função do espaço de memória utilizado e do tempo que o programa consome para ser executado. O espaço de memória ocupado pelo programa é determinado pela quantidade de rotinas de seleção e/ou repetição utilizadas em sua estrutura.

III - Tipos abstratos de dados podem ser considerados como generalizações de tipos primitivos de dados e um exemplo são as Listas Lineares. Pela mesma ótica, procedimentos podem ser considerados generalizações de operações primitivas como adição, subtração e multiplicação.

IV - Os algoritmos exponenciais são geralmente simples variações de pesquisa exaustiva, enquanto algoritmos polinomiais são geralmente obtidos através de um entendimento mais profundo da estrutura do problema.


É correto o que se afirma em: 

Alternativas
Q952902 Algoritmos e Estrutura de Dados
Acerca dos algoritmos de ordenação, assinale a afirmativa verdadeira.
Alternativas
Q952901 Algoritmos e Estrutura de Dados
Na estrutura de dados min heap (heap mínima), qual das afirmativas abaixo é verdadeira?
Alternativas
Q952900 Algoritmos e Estrutura de Dados
O algoritmo quicksort é um método de ordenação comumente utilizado e que adota a estratégia de divisão e conquista. Qual a complexidade de tempo de pior caso do algoritmo?
Alternativas
Q950943 Algoritmos e Estrutura de Dados

Julgue o item subsequente, relativo a estrutura de dados.


Situação hipotética: Para ordenar os números do vetor (30, 50, 10, 20, 40), foram realizados os passos i a vi, apresentados a seguir, com os respectivos resultados a cada passagem.


i 30 > 50?

30,50,10,20,40

ii 50 > 10?

30,10,50,20,40

iii 50 > 20?

30,10,20,50,40

iv 50 > 40?

30,10,20,40,50

v 30 > 10?

10,30,20,40,50

vi 30 > 20?

10,20,30,40,50


Assertiva: Nessa situação, os passos realizados constituem um algoritmo do tipo bubble sort, ou bolha.

Alternativas
Q950942 Algoritmos e Estrutura de Dados

Julgue o próximo item, concernente ao conceito relacionado a algoritmos e linguagens de programação.


O comando 29 = A atribui à variável A o valor 29.

Alternativas
Q950940 Algoritmos e Estrutura de Dados

Julgue o próximo item, concernente ao conceito relacionado a algoritmos e linguagens de programação.


A resposta da expressão a seguir é verdadeiro.


se ((-(-2-6*12/3-1)) > (3+3-3*3-3^3+3)) então

escreva "verdadeiro";

senão

escreva "falso";

Alternativas
Q950939 Algoritmos e Estrutura de Dados

Julgue o próximo item, concernente ao conceito relacionado a algoritmos e linguagens de programação.


Em um algoritmo, uma constante é um espaço físico na memória, e é identificada por um nome que não sofre alteração durante a execução do programa.

Alternativas
Q949275 Algoritmos e Estrutura de Dados

No que se refere a procedimentos e funções, às estruturas de controle de fluxo nas linguagens de programação e à arquitetura J2EE, julgue o item que segue.


A condição, na estrutura de repetição while, é testada antes de se executar o conjunto de instruções.

Alternativas
Q949273 Algoritmos e Estrutura de Dados

No que se refere a procedimentos e funções, às estruturas de controle de fluxo nas linguagens de programação e à arquitetura J2EE, julgue o item que segue.


As funções podem ser utilizadas, em expressões, como se fossem variáveis.

Alternativas
Q949256 Algoritmos e Estrutura de Dados
Julgue o item seguinte, relativo a algoritmos, a estruturas de dados e objetos, à programação orientada a objetos e à arquitetura MVC.
Nos algoritmos, as variáveis são, notadamente, utilizadas para representar valores previamente conhecidos.
Alternativas
Q948140 Algoritmos e Estrutura de Dados
Algoritmo é uma sequência finita e bem definida de passos que, quando executados, realizam uma tarefa específica ou resolvem um problema. NÃO é uma das propriedades do algoritmo:
Alternativas
Q948139 Algoritmos e Estrutura de Dados

Analise os itens abaixo que versam sobre Lógica de Programação e depois responda:


I. Lógica de programação é o modo como se escreve um programa de computador, um algoritmo. Um algoritmo é uma sequência de passos para se executar uma função.

II. A linguagem de programação é como uma língua normal, um grupo de palavras com significados. No caso da programação, a maioria das linguagens é escrita em Inglês. Estas linguagens fazem o computador assimilar cada comando e função de um algoritmo, depois executar cada função.

III. Na hora de programar alguns passos são indispensáveis, como Declarar Variáveis. Variáveis são escritas exclusivamente por letras, que representam um valor que pode ser mudado a qualquer momento.

IV. Saber lógica de programação é saber o melhor jeito de escrever um código, para o computador interpretar corretamente. É saber se comunicar com a máquina a partir de uma linguagem seja lá qual for.


Analisados os itens é CORRETO afirmar que:

Alternativas
Respostas
581: A
582: C
583: E
584: B
585: C
586: B
587: B
588: C
589: D
590: C
591: C
592: C
593: E
594: C
595: C
596: C
597: C
598: E
599: A
600: C