Baixe o app para aproveitar ainda mais
Prévia do material em texto
08/10/2017 BDQ: Teste de Conhecimento http://estacio.webaula.com.br/Classroom/index.html?id=2082197&classId=798922&topicId=2560893&p0=03c7c0ace395d80182db07ae2c30f034… 1/4 CCT0260_A8_201702334351_V1 Marque a afirmativa que represente uma separação. Dr. Pei Tam possui uma lista não ordenada de pacientes de seu consultório em que registra apenas o nome endereço e o telefone de cada paciente. Como não há limites para o crescimento de sua lista, como se pode implementar a inserção de um novo paciente na lista, sabendo que cada paciente é do �po Paciente e a lista é do �po List assim definidos : struct Paciente { long int matricula; string nome, endereco e tel; }; struct List { Paciente p; struct List *link; }; ESTRUTURA DE DADOS CCT0260_A8_201702334351_V1 Lupa Vídeo PPT MP3 Aluno: EDILSON CORRÊA Matrícula: 201702334351 Disciplina: CCT0260 - ESTRUT.DE DADOS Período Acad.: 2017.3 EAD (G) / EX Prezado (a) Aluno(a), Você fará agora seu EXERCÍCIO DE FIXAÇÃO! Lembre-se que este exercício é opcional, mas não valerá ponto para sua avaliação. O mesmo será composto de questões de múltipla escolha (3). Após a finalização do exercício, você terá acesso ao gabarito. Aproveite para se familiarizar com este modelo de questões que será usado na sua AV e AVS. 1. Organizar os dados da lista em ordem crescente ou decrescente. Juntar duas listas, colocando uma lista no final de outra, obtendo, ao final, uma só lista resultante. Intercalar a ordem dos dados da lista do final para o início, atualizando a lista. Consiste em dividir a lista em duas outras listas. A quantidade de nós que cada lista terá, depende da necessidade. Alterar a ordem dos dados da lista do final para o início, atualizando a lista. Gabarito Comentado 2. List * inserePac(List *i, Paciente pt){ List *novo ; novo->p = pt; novo->link = i; 08/10/2017 BDQ: Teste de Conhecimento http://estacio.webaula.com.br/Classroom/index.html?id=2082197&classId=798922&topicId=2560893&p0=03c7c0ace395d80182db07ae2c30f034… 2/4 Para a criação de uma Fila seqüencial basta iniciar as variáveis de início e final, ou seja, apontá-las para as posições iniciais do vetor. O que alteraria na rotina de inserir se a variável final fosse inicializada com o valor -1 (menos um): return novo; } List * inserePac(List *i, Paciente pac) { List *novo = new List; novo.p = pac; novo.link = i; return novo; } List * inserePac(List *i) { List *novo = new List; Paciente pat; novo->p = pat; novo->link = i; return novo; } List * inserePac(List *i, Paciente pt) { List *novo = new List; novo->p = pt; novo->link =i; return novo; } List insereCliente(List *i, Paciente pac) { List novo[]; novo[0].p = pac; novo[0].link = i; return novo; } Gabarito Comentado 3. Após a inserção deve-se fazer o decremento da variável final Antes da inserção deve-se fazer o incremento da variável final Após a inserção deve-se fazer o incremento da variável inicio Antes da inserção deve-se fazer o decremento da variável final Após a inserção deve-se fazer o incremento da variável final Gabarito Comentado 08/10/2017 BDQ: Teste de Conhecimento http://estacio.webaula.com.br/Classroom/index.html?id=2082197&classId=798922&topicId=2560893&p0=03c7c0ace395d80182db07ae2c30f034… 3/4 Assinale a alternativa correta sobre alocação de memória. Montei uma biblioteca popular que aceita doações sem limites. Marque a opção que especifica o tipo de lista e o tipo de alocação de memória mais adequados para este problema. Marque a afirmativa que represente uma concatenação em listas. Em uma lista linear simplesmente encadeada. Podemos dizer que uma lista encadeada tem as seguintes características: i) conhecida como lista ligada. ii) seus nós são responsáveis para manter a sequência da lista. iii) o último nó deve apontar para NULL. Assinale a alternativa que informa as afirmativas corretas. 4. É correto afirmar que a alocação dinâmica de memória sempre leva a programas mais rápidos. Uma das vantagens da alocação dinâmica sobre a alocação estática é que não é necessário fazer a liberação da memória utilizada. Alocação estática de memória refere-se ao processo de alocar memória com o uso de ponteiros. A declaração de um vetor é um exemplo clássico de alocação dinâmica de memória. Na alocação dinâmica de memória, a memória é alocada sob demanda, apenas quando necessário. 5. fila encadeada e alocação dinâmica de memória lista sequencial e alocação dinâmica de memória fila dinâmica e alocação dinâmica de memória pilha dinâmica e alocação dinâmica de memória lista encadeada e alocação dinâmica de memória Gabarito Comentado 6. Juntar duas listas, colocando uma lista no final de outra, obtendo, ao final, uma só lista resultante. Consiste em dividir a lista em duas outras listas. A quantidade de nós que cada lista terá, depende da necessidade. Alterar a ordem dos dados da lista do final para o início, atualizando a lista. Intercalar a ordem dos dados da lista do final para o início, atualizando a lista. Organizar os dados da lista em ordem crescente ou decrescente. Gabarito Comentado 7. Além do campo relativo ao dado, cada nó possui dois ponteiros, Cada nó possui um só ponteiro que referencia o próximo nó da lista. O ponteiro do "primeiro" nó não é NULL, mas sim aponta de volta para o "primeiro" nó da lista, formando um ciclo. Cada ponteiro possui um só endereço que referencia o primeiro nó da lista. O ponteiro do "último" nó não é NULL, mas sim aponta de volta para o "primeiro" nó da lista. Gabarito Comentado 8. Todas as afirmativas estão corretas. Somente a afirmativa iii esta correta. Somente as afirmativas i e ii estão corretas. Todas as afirmativas estão incorretas. 08/10/2017 BDQ: Teste de Conhecimento http://estacio.webaula.com.br/Classroom/index.html?id=2082197&classId=798922&topicId=2560893&p0=03c7c0ace395d80182db07ae2c30f034… 4/4 Somente a afirmativa i esta correta. Gabarito Comentado Legenda: Questão não respondida Questão não gravada Questão gravada Exercício inciado em 08/10/2017 20:44:17.
Compartilhar