mateus-hamade/multiple-choice-questions huggingface dataset:
Algoritmos e Estrutura de Dados Algoritmos , Algoritmos de Busca

Considere os seguintes métodos de busca/indexação:     I. Busca binária  II. Tabelas hash  III. Índices B-trees     Considere ainda um universo de busca com aproximadamente um milhão de chaves, para o qual cada método tenha sido implementado adequadamente.  Num benchmark extensivo, cada método apresentou um número médio de acessos até que cada chave fosse localizada.  Esses tempos médios, em ordem crescente, correspondem aos métodos: 

A: I, II, III;
B: I, III, II;
C: II, I, III;
D: II, III, I;
E: III, I, II.
Algoritmos e Estrutura de Dados Algoritmos , Conceitos Básicos e Algoritmos

O scheduling da CPU lida com a escolha de qual processo, ou thread, da fila de prontos deve ser alocado a seguir. Existem vários algoritmos com essa função, sendo que um é comprovadamente ótimo, no quesito de minimizar o tempo médio de espera para determinado conjunto de processos. Esse algoritmo ótimo é scheduling

A: “primeiro-a-chegar, primeiro-a-ser-atendido” (FCFS – First-Come First-Served).
B: trabalho mais curto primeiro (SJF – Shortest Job First).
C: por prioridades.
D: round-robin (RR).
E: de filas multiníveis.
Algoritmos e Estrutura de Dados Estrutura de Dados , Árvores

Em relação a estrutura de dados árvore, avalie se são verdadeiras (V) ou falsas (F) as afirmativas a seguir.  I O número de nível mais alto de uma árvore é conhecido como grau de uma árvore.  II Quando um nó possui grau zero, diz-se que ele é um nó terminal ou folha.  III Árvores são estruturas de dados estáticas em que os dados possuem uma ordem pré-definida, os elementos são dispostos de acordo com uma hierarquia e existe um nó principal conhecido como raiz.  As afirmativas I, II e III são, respectivamente:  

A: V, F e V.
B: F, V e F.
C: V, F e F.
D: F, F e F.
E: V, V e F.
Algoritmos e Estrutura de Dados Algoritmos , Algoritmos de Ordenação

Em relação aos algoritmos de ordenação, avalie se são verdadeiras (V) ou falsas (F) as afirmativas a seguir: I O algoritmo quicksort é muito eficiente quando temos uma quantidade pequena de elementos a ordenar. II O algoritmo shell utiliza intensamente a inserção direta. III No algoritmo bubble sort o número de variáveis envolvidas é pequeno. As afirmativas I, II e III são, respectivamente: 

A: V, F e V.
B: F, V e V.
C: V, F e F.
D: F, F e V.
E: V, V e V.
Algoritmos e Estrutura de Dados Estrutura de Dados , Matrizes em Estrutura de Dados

No que se refere a vetores, matrizes, filas e árvores binárias, julgue o item.     A estrutura de uma matriz não permite que o armazenamento de valores possa ser referenciado e associado a outros em duas ou mais dimensões. 

A: Certo
B: Errado
Algoritmos e Estrutura de Dados Estrutura de Dados , Vetores

Assinale a alternativa que indica corretamente o que ocorre quando um programador atribui um valor para uma posição além do tamanho do vetor. Por exemplo, suponha que um vetor VET foi definido com 10 posições e o programador tentou fazer a operação VET[15]=1.

A: O compilador irá reportar um erro e o executável não será criado.
B: O programa pode ser compilado, mas apresenta sempre um erro de execução imediatamente.
C: O programa pode ser compilado, mas o compilador previne o problema e elimina a operação incorreta.
D: O programa pode ser compilado e a atribuição do valor é realizada na última posição válida do vetor.
E: O programa é compilado, mas quando executado pode apresentar resultados imprevistos ou abortar a execução.
Algoritmos e Estrutura de Dados Estrutura de Dados , Vetores

Considere o problema de ordenar em ordem crescente o array formado pelos números [67, 23, 11, 18, 87, 44] utilizando o Método da Seleção Direta. Assinale a alternativa que mostra o posicionamento dos números no array após ter sido realizada a primeira troca.

A: [11, 23, 67, 18, 87, 44]
B: [23, 67, 11, 18, 87, 44]
C: [67, 11, 23, 18, 87, 44]
D: [44, 23, 11, 18, 87, 67]
E: [67, 23, 87, 18, 11, 44]
Algoritmos e Estrutura de Dados Algoritmos , Recursividade

A respeito de um algoritmo recursivo, analise as afirmativas abaixo e assinale a alternativa correta.     I. Deve conter pelo menos uma estrutura de repetição.  II. Deve conter pelo menos uma estrutura de seleção.  III. Deve invocar a si mesmo pelo menos uma vez ao ser executado. 

A: Todas as afirmativas estão corretas.
B: Somente a afirmativa II está correta.
C: Somente as afirmativas I e II estão corretas.
D: Somente a afirmativa I está correta.
E: Somente as afirmativas II e III estão corretas.
Algoritmos e Estrutura de Dados Algoritmos , Conceitos Básicos e Algoritmos , Estrutura de Controle e Repetição

Considere a seguinte definição: “Uma estrutura de seleção permite a escolha de um grupo de ações e estruturas, contido na estrutura de seleção, a ser executado quando determinadas condições, representadas por expressões lógicas, são ou não satisfeitas”. Com base nessa definição, analise as afirmativas abaixo e assinale a alternativa correta.     I. Uma estrutura de seleção deve conter pelo menos outra estrutura de seleção.  II. O grupo de ações existente dentro de uma estrutura de seleção pode não ser executado.  III. Uma estrutura de seleção sempre deve conter dois grupos de ações: um que é executado caso a expressão lógica seja verdadeira e outro que é executado caso a expressão lógica seja falsa. 

A: Somente a afirmativa III está correta.
B: Somente a afirmativa II está correta.
C: Somente as afirmativas I e II estão corretas.
D: Somente a afirmativa I está correta.
E: Todas as afirmativas estão corretas.
Algoritmos e Estrutura de Dados Algoritmos , Conceitos Básicos e Algoritmos , Estrutura de Dados ( assuntos)

Sabendo-se que a função retorna o número de elementos de um array e que L assume o tipo de um array de inteiros, indexados a partir de zero, analise o pseudocódigo a seguir.     Esse algoritmo deveria ordenar os elementos do array em ordem crescente, mas há problemas no código que produzem resultados errôneos.  Assinale a opção que indica o que é de fato printado ao final da execução do código mostrado. 

A: {10, 2, 40, 53, 28, 12}
B: {2, 10, 12, 28, 40, 53}
C: {53, 40, 28, 12, 10, 2}
D: {2, 2, 12, 12, 12, 12}
E: {2, 10, 10, 10, 10, 12}
Algoritmos e Estrutura de Dados Algoritmos , Conceitos Básicos e Algoritmos

Considere o seguinte histórico de dez compras em uma loja de conveniência onde, para cada compra, aparecem assinalados os produtos adquiridos.  Na aplicação do algoritmo Apriori para essa amostra, a medida de confiança (confidence) para a associação  {cerveja → gelo}  é  

A: 1,0
B: 0,6
C: 0,5
D: 0,3
E: 0,1
Algoritmos e Estrutura de Dados Estrutura de Dados , Listas

Abaixo tem-se uma tabela que ilustra o conjunto de nós de uma lista duplamente encadeada, contendo o total de 5 nós.        Ao imprimir a estrutura na ordem correta, o conteúdo apresentado será I – F – S – P – 2019, dessa forma, assinale a alternativa que contém os dados que preenchem, corretamente, a coluna “conteúdo”, de cima para baixo.  

A: P – I – S – 2019 – F
B: 2019 – P – S – F – I
C: S – P – I – F – 2019
D: S – I – F – 2019 – P
Algoritmos e Estrutura de Dados Algoritmos , Complexidade de Algoritmos

A notação O é amplamente utilizada como ferramenta de análise para calcular a complexidade computacional de um algoritmo caracterizando seu tempo de execução e limites espaciais em função de um parâmetro n.     Considere o código de um método em Java contendo o algoritmo a seguir:        Se cada um dos arranjos a e b do algoritmo tem tamanho n, então, o pior caso para o tempo de execução desse método é:  

A: O(2n )
B: O(n)
C: O(n2 )
D: O(log n)
Algoritmos e Estrutura de Dados Algoritmos , Estrutura de Controle e Repetição

As estruturas de repetição possibilitam a criação de laços de repetição dentro de um algoritmo, os quais ganham esse nome pela sua característica de execução finita em círculos. A tabela, a seguir, apresenta uma comparação entre as estruturas de repetição existentes:        Em que:  v é a variável de controle;  vi é o valor inicial da variável v;  vf é o valor final da variável v;  p é o valor do incremento dado à variável v.     Sabe-se que algumas características da tabela acima foram propositalmente omitidas. Desta forma, os itens (I), (II) e (III) são, respectivamente: 

A: Início – Mínimo 1 – v < vf
B: Final – Mínimo 1 – v < vf
C: Final – 0 ou muitas – v <= vf
D: Início – 0 ou muitas – v <= vf
Algoritmos e Estrutura de Dados Algoritmos , Complexidade de Algoritmos , Estrutura de Dados ( assuntos)

Considere as seguintes afirmações sobre algoritmos e estruturas de dados:     I. Filas são estruturas do tipo FIFO (First In First Out).  II. A inserção no fim de uma lista duplamente encadeada e não ordenada é realizada em O(n).  O tempo de execução do algoritmo quicksort no pior caso é O(n2 ).     Assinale a opção CORRETA:  

A: Apenas a afirmação I é verdadeira.
B: Apenas a afirmação II é verdadeira.
C: Apenas a afirmação III é verdadeira.
D: Apenas as afirmações I e III são verdadeiras.
E: As afirmações I, II e III são verdadeiras.
Algoritmos e Estrutura de Dados Algoritmos , Recursividade

Sobre linguagens recursivas e recursivamente enumeráveis, é correto afirmar que

A: um autômato finito pode reconhecer uma linguagem recursiva, desde que o alfabeto seja suficientemente grande.
B: uma linguagem é recursivamente enumerável se e somente se ela é livre de contexto e regular.
C: elas são equivalentes.
D: a classe das linguagens recursivamente enumeráveis é fechada para complemento.
E: a classe das linguagens recursivas é um subconjunto estrito da classe das linguagens recursivamente enumeráveis.
Algoritmos e Estrutura de Dados Algoritmos , Complexidade de Algoritmos

Avalie as afirmações abaixo:     I. A classe P e a classe NP são disjuntas.  II. A classe P é um subconjunto da classe co-NP.  III. Problemas coNP-completos admitem um certificado tal que uma resposta negativa pode ser verificada em tempo polinomial.  IV. A interseção das classes NP e co-NP é vazia.     Está correto apenas o que se afirma em 

A: I e III.
B: I e IV.
C: I, II e IV
D: II, III.
E: II e IV.
Algoritmos e Estrutura de Dados Algoritmos , Conceitos Básicos e Algoritmos

A teoria de algoritmos de aproximação, às vezes chamados de algoritmos aproximativos, é extremamente útil para tratar problemas NP-difíceis.     Sobre algoritmos de aproximação, é correto afirmar que 

A: um algoritmo de aproximação, embora não encontre a resposta correta sempre, pode ser executado em tempo polinomial.
B: um algoritmo de aproximação pode ou não fornecer garantias sobre a qualidade da solução encontrada.
C: seu tempo de execução pode ser uma função da qualidade da solução a ser encontrada.
D: podem ser utilizados apenas em problemas de maximização.
E: podem apenas ser utilizados para tratar problemas NP-difíceis.
Algoritmos e Estrutura de Dados Algoritmos , Complexidade de Algoritmos

Uma transformação polinomial é uma ferramenta fundamental na demonstração de que determinado problema é NP-difícil.     Avalie as afirmações sobre propriedades que transformações polinomiais devem satisfazer.     I. Para toda transformação polinomial, deve existir uma Máquina de Turing determinística que a computa em tempo polinomial.  II. Se uma transformação polinomial transforma um elemento de linguagem A em um elemento de linguagem B, então A é um subconjunto não necessariamente próprio de B.  III. Se uma transformação polinomial transforma um elemento de uma linguagem A em um elemento de linguagem B, e A pertence a NP, então B pertence a NP.  IV. A quantidade de espaço utilizada pela transformação pode ser limitada por uma constante.     Está correto apenas o que se afirma em 

A: I e II.
B: I e IV.
C: I, II e III.
D: II, III e IV
E: III e IV.
Algoritmos e Estrutura de Dados Algoritmos , Complexidade de Algoritmos

Sobre uma importante classe de complexidade, a classe dos problemas NP-completos, NÃO se pode afirmar que

A: CIRCUITO HAMILTONIANO é um problema NP-completo.
B: COBERTURA POR VÉRTICES é um problema NP-completo.
C: SATISFATIBILIDADE é um problema NP-completo.
D: 2SAT é um problema NP-completo.
E: CLIQUE é um problema NP-completo.
Algoritmos e Estrutura de Dados Estrutura de Dados , Grafos

Tendo como entrada um grafo acíclico dirigido ponderado G = (V, E), pode-se calcular o caminho mínimo de origem única,

A: aplicando a busca em largura em G, o caminho mínimo de origem única é calculado em tempo θ(V2 ).
B: aplicando a busca em largura no grafo transposto GT = (V, ET ), o caminho mínimo de origem única é calculado em tempo θ(V2 ).
C: relaxando as arestas de G de acordo com a ordenação topológica de seus vértices, o caminho mínimo de origem única é calculado em tempo θ(V + E).
D: aplicando a busca em profundidade no grafo transposto GT = (V, ET ), o caminho mínimo de origem única é calculado em tempo θ(V + E).
E: relaxando as arestas pela busca em profundidade no grafo de entrada G = (V, E) e, posteriormente, aplicando a busca em profundidade no grafo transposto GT = (V, ET ), o caminho mínimo de origem única é calculado em tempo θ(V2 ).
Algoritmos e Estrutura de Dados Estrutura de Dados , Grafos

A obtenção das componentes fortemente conexas de um grafo dirigido G = (V, E) é feita da seguinte forma:

A: Aplicação da busca em profundidade em G, para obtenção dos tempos de término para cada vértice, e aplicação da busca em profundidade em G, considerando os vértices em ordem decrescente dos tempos de término.
B: Aplicação da busca em profundidade em G, para obtenção dos tempos de término para cada vértice, e aplicação da busca em profundidade no grafo transposto GT = (V, ET ), considerando os vértices em ordem decrescente dos tempos de término.
C: Aplicação da busca em profundidade em G, para obtenção dos tempos de término para cada vértice, e aplicação da busca em largura no grafo transposto GT = (V, ET ), considerando os vértices em ordem decrescente dos tempos de término.
D: Aplicação da busca em profundidade em G, para obtenção dos tempos de descoberta para cada vértice, e aplicação da busca em profundidade no grafo transposto GT = (V, ET ), considerando os vértices em ordem crescente dos tempos de descoberta.
E: Aplicação da busca em profundidade no grafo transposto GT = (V, ET ), para obtenção dos tempos de descoberta para cada vértice, e aplicação da busca em profundidade em G, considerando os vértices em ordem decrescente dos tempos de descoberta.
Algoritmos e Estrutura de Dados Estrutura de Dados , Grafos

Considere a matriz de adjacência abaixo correspondente a um grafo direcionado ponderado.        Avalie as afirmações referentes ao menor caminho tendo como origem o vértice 1.     I. O menor caminho do vértice 1 até o vértice 7 passa pelos vértices 3 e 8.  II. O menor caminho do vértice 1 até o vértice 5 passa pelo vértice 2.  III. O menor caminho do vértice 1 até o vértice 9 passa pelos vértices 2 e 6.  IV. O menor caminho do vértice 1 até o vértice 8 passa pelos vértices 3 e 6.  V. O menor caminho do vértice 1 até o vértice 6 passa pelo vértice 4.     Está correto apenas o que se afirma em  

A: I, II e IV.
B: I, II e V.
C: II, III e IV.
D: I e IV.
E: I e V.
Algoritmos e Estrutura de Dados Algoritmos , Conceitos Básicos e Algoritmos

Para se projetar um Algoritmo por indução, deve-se garantir que seja possível solucionar

A: um problema a partir da solução de subproblemas sobrepostos.
B: um problema recursivamente a partir de soluções locais para os subproblemas.
C: um conjunto de subproblemas de maneira recursiva, e a solução deve ser polinomial.
D: um problema a partir da solução de subproblemas com subestrutura ótima.
E: uma pequena instância do problema, e a solução para todo problema pode ser construída a partir da solução de problemas menores.
Algoritmos e Estrutura de Dados Algoritmos , Complexidade de Algoritmos

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

A: recursivo, em tempo polinomial, para resolver subproblemas sobrepostos.
B: recursivo, em tempo exponencial, para resolver subproblemas não sobrepostos.
C: iterativo, em tempo exponencial, para resolver subproblemas sobrepostos.
D: iterativo, em tempo polinomial, a partir de uma implementação recursiva exponencial.
E: iterativo, em tempo polinomial, a partir de uma implementação recursiva polinomial.
Algoritmos e Estrutura de Dados Algoritmos , Algoritmos de Ordenação

Considerando os algoritmos de ordenação por comparação, o limite inferior para o pior caso desses algoritmos é

A: Ω(n2 lg n).
B: Ω(n2 ).
C: Ω(n lg n).
D: Ω(n).
E: Ω(lg n).
Algoritmos e Estrutura de Dados Algoritmos , Recursividade

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 é 

A: T(n) = n2 + n log(n) + n.
B: T(n) = n2 + n log(n).
C: T(n) = n2 – n + log(n).
D: T(n) = n log(n) + n – 1.
E: T(n) = n log(n) – n + 1.
Algoritmos e Estrutura de Dados Algoritmos , Algoritmos de Ordenação

Para o método de ordenação Quicksort, a ordem de complexidade do pior caso e do caso médio, respectivamente, é

A: θ(n2 ) e θ(n2 ).
B: θ(n2 ) e θ(n lg n ).
C: θ(n lg n ) e θ(n2 ).
D: θ(n lg n ) e θ(n lg n ).
E: θ(n lg n ) e θ(n).
Algoritmos e Estrutura de Dados Algoritmos , Complexidade de Algoritmos

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  

A: T1 (n) = θ(n2 ). T2 (n) = θ(n2 ).
B: T2 (n) = θ(n lg n).
C: T2 (n) = θ(lg n)
D: T1 (n) = θ(n lg n).
E: T2 (n) = θ(n).
Algoritmos e Estrutura de Dados Algoritmos , Algoritmos de Ordenação

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 é   

A: (2); (5); (4); (6); (7); (1); (3).
B: (4); (7); (5); (1); (6); (3); (2).
C: (6); (2); (3); (5); (1); (7); (4).
D: (3); (6); (7); (4); (5); (2); (1).
E: (7); (4); (1); (2); (3); (5); (6).
Algoritmos e Estrutura de Dados Algoritmos , Fluxogramas

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 é:

A: Projeto físico
B: Workflow
C: Modelagem de dados
D: Concept Project
E: System Flowchart
Algoritmos e Estrutura de Dados Estrutura de Dados , Conceitos Básicos de Estrutura de Dados

Estruturas de dados são objetos que armazenam dados de forma eficiente, criando meios para o usuário manuseá-los. Dentre as estruturas abaixo , aquela que NÃO é conhecida é:

A: Pilhas.
B: Filas .
C: Árvores.
D: Tabelas de dispersão.
E: Quadrados.
Algoritmos e Estrutura de Dados Algoritmos , Algoritmos de Ordenação

Analise o trecho do algoritmo abaixo representado em português estruturado:         É correto afirmar que: 

A: Trata-se do trecho de um algoritmo de pesquisa binária que só é possível ser empregada se os dados estiverem ordenados no sistema FIFO.
B: Trata-se do trecho de um algoritmo de pesquisa sequencial que deve ter ordenado o vetor anteriormente para que pudesse ser empregada.
C: Trata-se de um algoritmo de ordenação do tipo bubble sort onde é enviado ao fim da fila o maior elemento da lista.
D: Trata-se de um trecho de algoritmo de pesquisa binária em um vetor que deve estar previamente ordenado em ordem crescente para seu emprego.
E: Trata-se de um algoritmo de ordenação sequencial para que posteriormente seja possível pesquisar no vetor Nome.
Algoritmos e Estrutura de Dados Algoritmos , Conceitos Básicos e Algoritmos

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:  

A: II e III, apenas.
B: I, II e IV, apenas.
C: I, III e IV, apenas.
D: I, II e III, apenas.
E: II, III e IV, apenas.
Algoritmos e Estrutura de Dados Algoritmos , Algoritmos de Ordenação

Acerca dos algoritmos de ordenação, assinale a afirmativa verdadeira.

A: O Radix sort é um algoritmo de ordenação instável.
B: A complexidade do algoritmo Bubble sort é de ordem logarítmica.
C: O algoritmo de ordenação Heapsort utiliza uma árvore ternária de busca.
D: O algoritmo Merge sort é implementado por meio de divisão e conquista
E: O algoritmo Insertion Sort é mais eficiente do que o Quick Sort para grandes entradas de dados.