Baixe o app para aproveitar ainda mais
Prévia do material em texto
ESTRUTURA DE DADOS 1a Questão (Ref.: 201409754050) Acerto: 1,0 / 1,0 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 Pilha Encadeada Lista Sequencial Pilha Sequencial 2a Questão (Ref.: 201409728795) Acerto: / 1,0 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 Vetores Pilhas Encadeadas Grafos Listas Encadeadas. 3a Questão (Ref.: 201409974879) Acerto: 1,0 / 1,0 Considera a FUNÇÃO abaixo: void inverte(int &x, int &y) { int aux = x; x = y; y = aux; } Quais valores serão impressos na tela quando o seguinte programa principal for executado? int main() { int a = 18, b = 28; inverte(a, b); cout << a <<" e "<< b; return 0; } 28 e 08 08 e 18 18 e 18 18 e 28 28 e 18 se 4a Questão (Ref.: 201409140516) Acerto: 0,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. 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 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. Retorna -1 se o valor de vl estiver dentro de v. Gabarito Comentado. 5a Questão (Ref.: 201409710356) Acerto: 0,0 / 1,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].media=6.0; vet[3].aluno=6.0; aluno[10]=6.0; aluno[3].10=6.0; aluno[3].media=6.0; 6a Questão (Ref.: 201409345195) Acerto: 1,0 / 1,0 Com relação à struct, é correto afirmar que : A struct é sempre definida dentro da main. Cada elemento da struct é chamado componente. 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. Não é possível criar um vetor de structs, pois o vetor trabalha apenas com dados do mesmo tipo. Gabarito Comentado. 7a Questão (Ref.: 201409728786) Acerto: 0,0 / 1,0 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,23,13,8,3 1,13,23,8,3 1,8,3,23,13 1,23,3,8,13 1,3,23,8,13 Gabarito Comentado. 8a Questão (Ref.: 201409140401) Acerto: 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; for (j = 1; j < n; j++) for (i=j; i > 0 && v[i-1]> v[i]; i--) { aux = v[i-1]; v[i-1] = v[i]; v[i] = aux; } } ... Assinale o método ao qual o trecho de algoritmo pertence. Quicksort Inserção Heapsort Seleção Bolha Gabarito Comentado. 9a Questão (Ref.: 201409140486) Acerto: 0,0 / 1,0 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 Vetor Variável Função Gabarito Comentado. 10a Questão (Ref.: 201409704210) Acerto: 1,0 / 1,0 __________________________ é 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 Sequencial Lista Não Linear Lista Linear de Alocação de Memória Lista Linear Não Alocada 1a Questão (Ref.: 201409678568) Acerto: 1,0 / 1,0 Leia com atenção as afirmativas abaixo e assinale a resposta correta. 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. I, II, III e VI são afirmativas verdadeiras II, IV, V e VI são afirmativas verdadeiras I, III, IV e VI são afirmativas verdadeiras II, IV e V são afirmativas verdadeiras I, II e V são afirmativas verdadeiras Gabarito Comentado. 2a Questão (Ref.: 201409731401) Acerto: 1,0 / 1,0 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. Grafo Pilha Lista Árvore Fila 3a Questão (Ref.: 201409140519) Acerto: 0,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: Ponteiros. Passagem por valor. Registro. Envio de inteiro. Envio de valor. Gabarito Comentado.4a Questão (Ref.: 201409380300) Acerto: 0,0 / 1,0 O programa não executa corretamente, pois o protótipo da função media( ) não apresenta a identificação dos parâmetros, mas apenas os tipos dos mesmos. O programa não executa corretamente, pois os protótipos estão fora da ordem em que as funções são descritas. O programa executa perfeitamente independente da ordem das funções já que existem os seus protótipos. O programa não executa corretamente pois as funções devem ser descritas antes da função main(), para que o compilador consiga reconhecê-las. O programa executa perfeitamente, mas não mostra o valor da media já que esta função não foi chamada na função main( ). Gabarito Comentado. 5a Questão (Ref.: 201409139980) Acerto: 1,0 / 1,0 Qual das seguintes estruturas de dados é classificada como heterogênea? Registro Fila Pilha Vetor Loop Gabarito Comentado. 6a Questão (Ref.: 201409779834) Acerto: 0,0 / 1,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; }; 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].nota=5.7; vet[10].nota=5.7; vet[10].aluno.nota=5.7 ; aluno.vet[10]=5.7; vet[10]=aluno.5.7; 7a Questão (Ref.: 201409140515) Acerto: 0,0 / 1,0 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: Tabela Hash Pesquisa binária Pesquisa ordenada Pesquisa de seleção Pesquisa sequêncial Gabarito Comentado. 8a Questão (Ref.: 201409140305) Acerto: 1,0 / 1,0 É correto afirmar sobre o funcionamento da busca sequencial. 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. 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 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. Pior caso: o elemento está no último índice do meu vetor. Gabarito Comentado. 9a Questão (Ref.: 201409704210) Acerto: 1,0 / 1,0 __________________________ é 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 Sequencial Lista Linear de Alocação de Memória Lista Linear Não Sequencial Lista Linear Não Alocada 10a Questão (Ref.: 201409140343) Acerto: 0,0 / 1,0 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 I e III estão corretas. Apenas as afirmações II está corretas. Apenas as afirmações I e II estão corretas. 1a Questão (Ref.: 201409379512) Acerto: 1,0 / 1,0 Na maioria dos sistemas operacionais, os arquivos são organizados hierarquicamente em um esquema de diretórios (pastas) e sub-diretórios. Qual a estrutura mais adequada para representar este problema ? lista pilha grafo fila árvore Gabarito Comentado. 2a Questão (Ref.: 201409140125) Acerto: 0,0 / 1,0 Podemos dizer que estrutura de dados é: 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. 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. Gabarito Comentado. 3a Questão (Ref.: 201409728793) Acerto: 0,0 / 1,0 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 funções Os Vetores As Estruturas de Dados As Filas Os Grafos 4a Questão (Ref.: 201409722206) Acerto: 0,0 / 1,0 Considere a 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; } 50 5 0 10 Haverá um erro de compilação Gabarito Comentado. 5a Questão (Ref.: 201409754045) Acerto: 1,0 / 1,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; }; 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 ; vet[10]=aluno.5.7; aluno.vet[10].nota=5.7; aluno.vet[10]=5.7; vet[10].nota=5.7; 6a Questão (Ref.: 201409812084) Acerto: 0,0 / 1,0 Marque a opção correta, considerando struct Livro { int codigo; float preco; } liv; Livro->liv.codigo = 12345; Livro.liv.codigo = 12345; Livro.codigo = 12345; liv->preco = 30.70; liv.preco = 30.70; 7a Questão (Ref.: 201409728785) Acerto: 0,0 / 1,0 Qual papel do for mais interno na função ordena abaixo ? void ordena( int n, int v[]) { int i, j, x; for (j = 1; j < n; ++j) { x = v[j]; for (i = j-1; i >= 0 && v[i] > x; --i) v[i+1] = v[i]; v[i+1] = x; } } Encontrar o ponto onde v[j] deve ser inserido em v[0..j-1].Encontrar o valor de v[j] deve em v[0..j-1]. Encontrar o maior valor de x que deve ser inserido em v[0..j-1]. Encontrar o menor valor v[j] que deve ser inserido em v[0..j-1]. Encontrar o elmento a ser eliminado do vetor Gabarito Comentado. 8a Questão (Ref.: 201409140147) Acerto: 0,0 / 1,0 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, 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 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 programas são construídos. Entendendo a ordenação, tem-se conhecimento para manter outros problemas. Gabarito Comentado. 9a Questão (Ref.: 201409345244) Acerto: 0,0 / 1,0 for (int i = 0; i < n; i++) cout << L[i] << endl; for (int i = 0; i < n; i++) cout << L[i].matricula << " " << L[i].nome << endl; for (int i = 0; i < n; i++) cout << L.matricula << " " << L.nome << endl; for (int i = 0; i < n; i++) cout << L[i].matricula << " " << L[i].nome[30] << endl; for (int i = 0; i < n; i++) cout << L.matricula[i] << " " << L.nome[i] << endl; Gabarito Comentado. 10a Questão (Ref.: 201409788029) Acerto: 0,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 : Busca Inserção Substituição Ordenação por inserção Inicialização 1. 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 Pilha Árvore Lista Grafo 2. 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 deleção de dados em um 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. É 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 utilização de dados nos programas de computador. Gabarito Comentado 3. 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). I, III e V. II, IV e V. I, II e III. I, III, IV e V. II, III, IV e V. Gabarito Comentado 4. 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. Marque a alternativa CORRETA: As alternativas I e II estão corretas As alternativas III e IV estão corretas. As alternativas I e III estão corretas. As alternativas II e IV estão corretas. Todas as alternativas estão corretas. Gabarito Comentado 5. 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. Vetores Listas Encadeadas. Filas Encadeadas Grafos Pilhas Encadeadas 6. Podemos dizer que estrutura de dados é: 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. Gabarito Comentado 7. 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. A correta associação entre os elementos das duas tabelas é: a2, b2, c1, d2. a1, b1, c2, d2. a2, b1, c2, d1. a1, b2, c1, d1. a1, b1, c2, d1 Gabarito Comentado 8. A forma correta para imprimir o valor do último elemento de um vetor v com n posições é: cout << v[n]; cout << v[n-1]; cout << v[ultimo]; cin >> v[-1]; cout << v[n+1]; 1a Questão (Ref.: 201409754050) Fórum de Dúvidas (1) Saiba (1) As estruturas de dados são utilizadas para manter dados ou informações organizados na memória, o que possibilita a otimizaçãodo 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 Sequencial Pilha Encadeada 2a Questão (Ref.: 201409811966) Fórum de Dúvidas (1) Saiba (1) 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 structs pilhas encadeadas listas encadeadas grafos 3a Questão (Ref.: 201409140132) Fórum de Dúvidas (1) Saiba (1) Estão entre algumas das possíveis formas de se estruturar dados: Grafos, lista ordenada, vetores. Algoritmos, lista ordenada, vetores. Grafos, lista ordenada, algoritmos. Grafos, algoritmos, fila. Lista encadeada, vetores, algoritmos. Gabarito Comentado 4a Questão (Ref.: 201409731393) Fórum de Dúvidas (1) Saiba (1) 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 ? Árvore Fila Pilha Lista Grafo 5a Questão (Ref.: 201409140502) Fórum de Dúvidas (1 de 1) Saiba (1 de 1) 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. Também são denominados tipos primitivos, não é possível decompor em partes menores. São tipos de dados indivisíveis. 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. 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. Gabarito Comentado 6a Questão (Ref.: 201409678568) Fórum de Dúvidas (1) Saiba (1) Leia com atenção as afirmativas abaixo e assinale a resposta correta. 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. II, IV, V e VI são afirmativas verdadeiras I, II, III e VI são afirmativas verdadeiras I, III, IV e VI são afirmativas verdadeiras II, IV e V são afirmativas verdadeiras I, II e V são afirmativas verdadeiras Gabarito Comentado 7a Questão (Ref.: 201409379512) Fórum de Dúvidas (1) Saiba (1) Na maioria dos sistemas operacionais, os arquivos são organizados hierarquicamente em um esquema de diretórios (pastas) e sub-diretórios. Qual a estrutura mais adequada para representar este problema ? fila árvore pilha grafo lista Gabarito Comentado 8a Questão (Ref.: 201409817457) Fórum de Dúvidas (1 de 1) Saiba (1 de 1) 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 pilha e uma fila. Após a impressão dos valores pela ordem teremos uma fila e uma pilha. Após a impressão dos valores pela ordem teremos duas filas. 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 um grafo. 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: int func (int &a, int b); int func (&int, int); void func (int &a, int &b); int func (int a, int &b); void func (int a, int &b); Gabarito Comentado 2. Informe qual deverá ser a saída do programa abaixo: #include void func(int *x) { do{ cout << *x << " "; (*x)--; }while(*x>0); } main() { int x=5; func(&x); cout << x; system("pause"); } 5 4 3 2 1 0 5 3 4 2 1 0 5 4 3 2 1 5 5 3 4 2 1 4 5 4 3 2 1 6 3. Na passagem por ____________________ , o endereço da variável da função chamadora é passado para a função chamada e, dessa forma, o valor poderá ser alterado, ou não. referência número caracter valor void 4. 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 o valor de vl se o valor n foi encontrado. Retorna -1 se o valor de vl estiver dentro de v. Resulta em erro, se o valor de vl não estiver dentro de v. Retorna -1 se o valor de n foi encontrado. Retorna a posição de v se o valor vl foi encontrado. Gabarito Comentado 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 Real Local Inteiro Global Gabarito Comentado 6. 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 7. Auxiliar = 100 Numero1 = 900 Numero2 = 20 Auxiliar = 111 Numero1 = 1000 Numero2 = 80 Auxiliar = 100 Numero1 = 900 Numero2 = 80 Auxiliar = 100 Numero1 = 1000 Numero2 = 20 Auxiliar = 101 Numero1 = 900 Numero2 = 20 Gabarito Comentado 8. 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 Os Vetores As Estruturas de Dados As funções Os Grafos 1a Questão (Ref.: 201409380300) Fórum de Dúvidas (1) Saiba (1) O programa não executa corretamente, pois o protótipo da função media( ) não apresenta a identificação dos parâmetros, mas apenas os tipos dos mesmos. O programa não executa corretamente, pois os protótipos estão fora da ordem em que as funções são descritas. O programa executa perfeitamente independente da ordem das funções já que existem os seus protótipos. O programa executa perfeitamente, mas não mostra o valor da media já que esta função não foi chamada na função main( ). O programa não executa corretamente pois as funções devem ser descritas antes da função main(), para que o compilador consiga reconhecê-las. Gabarito Comentado 2a Questão (Ref.: 201409728793) 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 Estruturas de Dados Os Grafos As funções Os Vetores As Filas 3a Questão (Ref.: 201409722206) Fórum de Dúvidas (1) Saiba (1) Considere a 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; } 0 Haverá um erro de compilação 5 10 50 Gabarito Comentado 4a Questão (Ref.: 201409140516) Fórum de Dúvidas (1) Saiba (1) 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 o valor de vl se o valor n foi encontrado. Retorna a posição de v se o valor vl foi encontrado. Retorna -1 se o valor de vl estiver dentro de v. Resulta em erro, se o valor de vl não estiver dentro de v. Retorna -1 se o valor de n foi encontrado. Gabarito Comentado 5a Questão (Ref.: 201409704310) Fórum de Dúvidas (1 de 1) Saiba (1 de 1) Na passagem por ____________________ , o endereço da variável da função chamadora é passado para a função chamada e, dessa forma, o valor poderá ser alterado, ou não. caracter número void valor referência 6a Questão (Ref.: 201409140519) 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. Ponteiros. Envio de valor. Registro. Passagem por valor. Gabarito Comentado 7a Questão (Ref.: 201409140485) Fórum de Dúvidas (1) Saiba (1) 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 Inteiro Global Real Gabarito Comentado 8a Questão (Ref.: 201409345165) Fórum de Dúvidas (1 de 1) Saiba (1 de 1) Auxiliar = 100 Numero1 = 900 Numero2 = 20 Auxiliar = 111 Numero1 = 1000 Numero2 = 80 Auxiliar = 101 Numero1 = 900 Numero2 = 20 Auxiliar = 100 Numero1 = 900 Numero2 = 80 Auxiliar = 100 Numero1 = 1000 Numero2 = 20 1a Questão (Ref.: 201409754022) Fórum de Dúvidas (1) Saiba (1) 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: As alternativas I e II estão corretas As alternativas III e IV estão corretas. As alternativas I e III estão corretas. Todas as alternativas estão corretas. As alternativas II e IV estão corretas. 2a Questão (Ref.: 201409140503) Fórum de Dúvidas (1 de 1) Saiba (1 de 1) 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. Compartilhamento de memória, maleabilidade e facilidade para inserção e remoção de componentes. Acesso, representação, compartilhamento de memória. Previsão de espaço físico, estruturas complexas, procedimentos menos intuitivos. Transferência de dados, gerenciamento de memória e procedimentos menos intuitivos. Proteção de memória, transferência de dados, estruturas simples. Gabarito Comentado 3a Questão (Ref.: 201409140125) Fórum de Dúvidas (1 de 1) Saiba (1 de 1) Podemos dizer que estrutura de dados é: Uma sequência de passos computacionais que transformauma 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. Gabarito Comentado 4a Questão (Ref.: 201409132040) Fórum de Dúvidas (1) Saiba (1) 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. A correta associação entre os elementos das duas tabelas é: a1, b1, c2, d2. a1, b2, c1, d1. a2, b2, c1, d2. a1, b1, c2, d1 a2, b1, c2, d1. Gabarito Comentado 5a Questão (Ref.: 201409718090) Fórum de Dúvidas (1) Saiba (1) A forma correta para imprimir o valor do último elemento de um vetor v com n posições é: cout << v[n-1]; cout << v[n]; cout << v[ultimo]; cin >> v[-1]; cout << v[n+1]; 6a Questão (Ref.: 201409132032) Fórum de Dúvidas (1 de 1) Saiba (1 de 1) 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 utilização de dados nos programas de computador. É um modo particular de armazenamento e organização de dados em um computador de modo que possam ser usados de modo eficiente. É um modo de deleção de dados em um computador. É um modo de distribuição e organização de dados em uma rede de computador de modo que possam ser usados de modo eficiente. São os nomes dados as variáveis na montagem de uma rotina. Gabarito Comentado 7a Questão (Ref.: 201409731401) Fórum de Dúvidas (1) Saiba (1) 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. Lista Grafo Pilha Árvore Fila 8a Questão (Ref.: 201409207616) Fórum de Dúvidas (1) Saiba (1) 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). I, III e V. I, II e III. II, III, IV e V. II, IV e V. I, III, IV e V. 1a Questão (Ref.: 201409342743) Fórum de Dúvidas (1) Saiba (1) 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. Marque a alternativa CORRETA: Todas as alternativas estão corretas. As alternativas I e III estão corretas. As alternativas I e II estão corretas As alternativas II e IV estão corretas. As alternativas III e IV estão corretas. Gabarito Comentado 2a Questão (Ref.: 201409728795) Fórum de Dúvidas (1) Saiba (1) 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. Pilhas Encadeadas Filas Encadeadas Listas Encadeadas. Grafos Vetores 3a Questão (Ref.: 201409731393) Fórum de Dúvidas (1) Saiba (1) 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 ? Árvore Lista Pilha Grafo Fila 4a Questão (Ref.: 201409817457) Fórum de Dúvidas (1 de 1) Saiba (1 de 1) 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 uma pilha. Após a impressão dos valores pela ordem teremos duas filas. 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 um grafo. Após a impressão dos valores pela ordem teremos uma pilha e uma fila. 5a Questão (Ref.: 201409140132) Fórum de Dúvidas (1) Saiba (1) Estão entre algumas das possíveis formas de se estruturar dados: Grafos, lista ordenada, algoritmos. Grafos, lista ordenada, vetores. Algoritmos, lista ordenada, vetores. Lista encadeada, vetores, algoritmos. Grafos, algoritmos, fila. Gabarito Comentado 6a Questão (Ref.: 201409140502) Fórum de Dúvidas (1 de 1) Saiba (1 de 1) 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. 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. 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 estruturalentre seus elementos. Também são denominados tipos primitivos, não é possível decompor em partes menores. 7a Questão (Ref.: 201409754050) Fórum de Dúvidas (1) Saiba (1) 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 Fila Sequencial Pilha Sequencial Lista Encadeada 8a Questão (Ref.: 201409678568) Leia com atenção as afirmativas abaixo e assinale a resposta correta. 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. I, II, III e VI são afirmativas verdadeiras II, IV e V são afirmativas verdadeiras I, II e V são afirmativas verdadeiras I, III, IV e VI são afirmativas verdadeiras II, IV, V e VI são afirmativas verdadeiras 5. Analise as afirmativas abaixo e selecione a alternativa correta. I Algumas aplicações da estrutura de dados grafo são: Diagrama de Entidade Relacionamento e Redes de computadores. II Árvore e lista duplamente encadeada são estruturas não lineares. III A Fila é uma estrutura não linear e a inserção de um elemento acontece ao final. IV A Lista é uma das estruturas de dados mais simples, mas não se pode ordená-la. V O uso de ponteiros é fundamental para construção de listas encadeadas. 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 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: São os nomes dados as variáveis na montagem de uma rotina. É um modo de deleção de dados em um computador. É um modo particular de armazenamento e organização de dados em um computador de modo que possam ser usados de modo eficiente. É 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 utilização de dados nos programas de computador. 8. 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." grafos listas encadeadas filas encadeadas pilhas encadeadas structs 1. 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. Transferência de dados, gerenciamento de memória e procedimentos menos intuitivos. Acesso, representação, compartilhamento de memória. Compartilhamento de memória, maleabilidade e facilidade para inserção e remoção de componentes. Previsão de espaço físico, estruturas complexas, procedimentos menos intuitivos. Proteção de memória, transferência de dados, estruturas simples. 7. 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: São os nomes dados as variáveis na montagem de uma rotina. É um modo de deleção de dados em um computador. É 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 particular de armazenamento e organização de dados em um computador de modo que possam ser usados de modo eficiente. É um modo de utilização de dados nos programas de computador. 2. 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: #include< iostream > using namespace std; 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;} Marque a alternativa CORRETA: 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 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 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, 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. Assinale a opção certa. Quando não se escreve o protótipo de uma função ... A definição da função deverá ser escrita, obrigatoriamente, após o programa principal. É preciso definir a função antes do programa principal. O programa não funcionará de forma alguma. A chamada da função não poderá ser feita em qualquer hipótese. A chamada da função poderá ser feita em qualquer hipótese. 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 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. Ao modificar o valor da variável 'X' na função "modifica" seu valor modificado poderá ser apresentado em qualquer outra funçãodo 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" 3. Assinale a alternativa que apresenta duas formas de passagem de parâmetros para uma rotina ou função: Por memória e por disco. Por inferência e por valor. Por teste e por reforço. Por valor e por referência Por reforço e por referência. 4. 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 seta tipo do campo Nome da estrutura seta nome do campo Nome da estrutura vírgula tipo do campo Nome da estrutura ponto tipo do campo Nome da estrutura ponto nome do campo Qual das seguintes estruturas de dados é classificada como heterogênea? Registro Loop Fila Pilha Vetor 1. Marque a afirmativa correta para a "inserção incremental". É um tipo de sequenciação por intercalação. Consiste em adicionar um valor no vetor, mantendo a ordem existente e ajustando o total de elementos. É um tipo de ordenação por intercalação A técnica é boa quando os dados ficam uniformemente distribuídos entre os seus compartimentos. Os pivôs são escolhidos aleatoriamente. 2. 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. 6 e 1 6 e 2 5 e 5 7 e 1 6 e 4 4. 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 troca-o 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: Seleção Inserção Bolha Binária 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. O algoritmo utilizado pelo programador trata-se do método de ordenação denominado: Errado Inserção Quicksort Bolha Heapsort Certo Seleção 6. 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 ordenada Pesquisa sequêncial Pesquisa binária Tabela Hash Pesquisa de seleção 1. 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,23,3,8,13 1,8,3,23,13 1,13,23,8,3 1,23,13,8,3 1,3,23,8,13 2. É correto afirmar sobre o funcionamento da busca sequencial. 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 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. Pior caso: o elemento está no último índice do meu vetor. 3. 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 Bolha Pesquisa sequencial Seleção Pesquisa binária 4. 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 é: 1,2,4,5 4,1,2,5 2,4,1,5 1,4,2,5 2,1,4,5 5. 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; for (j = 1; j < n; j++) for (i=j; i > 0 && v[i-1]> v[i]; i--) { aux = v[i-1]; v[i-1] = v[i]; v[i] = aux; } } ... Assinale o método ao qual o trecho de algoritmo pertence. Quicksort Heapsort Bolha Seleção Inserção6. 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 Inserção Bolha Seleção QuickSort 7. Marque a afirmativa correta para a "Busca ou pesquisa binária". 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 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. 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. 8a Questão (Ref.: 201409140406) Fórum de Dúvidas (1) Saiba (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 contagem. por comparação. binária. linear.
Compartilhar