Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
SIMULADO PILHA – FILA DISCIPLINA: ESTRUTURA DE DADOS II 1- Julgue os itens a seguir, referentes a estrutura de dados e organização de arquivos. As filas são estruturas com base no princípio LIFO (last in, first out), no qual os dados que forem inseridos primeiro na fila serão os últimos a serem removidos. Existem duas funções que se aplicam a todas as filas: PUSH, que insere um dado no topo da fila, e POP, que remove o item no topo da fila. Certo Errado Stack (pilha) é definido como um tipo de dado abstrato LIFO (last in,first out).Push (adiciona) and pop são 2 operações fundamentais. Se não houver mais espaço para push 2 Nas estruturas de dados, a) devido às características das operações da fila, o primeiro elemento a ser inserido será o último a ser retirado. Estruturas desse tipo são conhecidas como LIFO. b) as pilhas são utilizadas para controlar o acesso de arquivos que concorrem a uma única impressora. c) a fila é uma lista linear na qual as operações de inserção e retirada ocorrem apenas no início da lista. d) a pilha é uma lista linear na qual as operações de inserção e retirada são efetuadas apenas no seu topo. e) devido às características das operações da pilha, o último elemento a ser inserido será o último a ser retirado. Estruturas desse tipo são conhecidas como FIFO. 3- A melhor definição para a estrutura de dados chamada FILA é(são): a) É uma estrutura de dados linear, que também pode ser linear e dinâmica. É composta por nós que apontam para o próximo elemento. b) São estruturas baseadas no princípio FIFO (first in, first out), em que os elementos que foram inseridos no início são os primeiros a serem removidos. c) São estruturas baseadas no princípio LIFO (last in, first out), na qual os dados que foram inseridos por último na pilha serão os primeiros a serem removidos. d) É uma estrutura de dados em que cada elemento tem um ou mais elementos associados. e) São estruturas de dados lineares e estáticas, isto é, são compostas por um número fixo (finito) de elementos de um determinado tipo de dados. O tempo de acesso aos elementos é muito rápido porém, a remoção de elementos pode ser custosa se não for desejável que haja espaços "vazios" no meio da estrutura. 4 - No que se refere a estruturas de dados é INCORRETO afirmar: a) Numa fila dupla, os elementos podem ser inseridos e removidos de qualquer um dos extremos da fila. b) Em qualquer situação é possível usar uma única fila dupla para representar duas filas simples. c) A implementação de uma fila dupla normalmente é mais eficiente com uma lista duplamente encadeada que com uma encadeada simples. d) Pela definição de fila, se os elementos são inseridos por um extremo da lista linear, eles só podem ser removidos pelo outro. e) Numa lista singularmente encadeada, para acessar o último nodo é necessário partir do primeiro e ir seguindo os campos de ligação até chegar ao final da lista. 5 - Com relação à estrutura de dados e organização de arquivos, julgue os itens subsecutivos. Uma fila é uma estrutura de dados sujeita à seguinte regra de operação: sempre que houver uma remoção, o elemento removido será o que estiver na estrutura há mais tempo. Certo Errado 6- As siglas e significados LIFO Last In, First Out e FIFO First In, First Out referem-se, respectivamente, às seguintes estruturas de dados a) Fila e Pilha. b) Pilha e Fila. 7 - FIFO refere-se a estruturas de dados do tipo a) fila. b) árvore binária. c) pilha. d) matriz quadrada. 9 - No armazenamento de dados pelo método FIFO (first in - first out), a estrutura de dados é representada por uma fila, em cuja posição final ocorrem inserções e, na inicial, retiradas. Certo Errado 10 - Uma fila é um tipo de lista linear em que a) as inserções são realizadas em um extremo e as remoções no outro extremo. b) as inserções e remoções são realizadas em um mesmo extremo. c) podem ser realizadas apenas inserções. d) a inserção de um elemento requer a remoção de outro elemento. 11- Seja uma lista encadeada, cujos nós são representados, na linguagem C, pela estrutura a seguir. typedef struct no { int x; struct no *prox; } No; Para inserir um novo elemento nessa estrutura, é necessário implementar uma função chamada insere(), que deve receber um ponteiro para o início da lista e um valor inteiro, que deverá ser inserido na lista em questão. A função deve retornar um ponteiro para o início da nova lista, resultado da inclusão do novo elemento na lista original. O cabeçalho dessa função deve ser o seguinte: No *insere(No *header,int info); Qual implementação da função insere() atende aos requisitos descritos acima? (A) No* insere(No *header,int info) { No *novo; novo=(No*) malloc(sizeof(No)); novo->x=info; novo->prox=header; return header; } (B) No* insere(No *header,int info) { No *p=header,*ant=NULL,*novo; for(;p!=NULL;p=p->prox) ant=p; novo=(No*) malloc(sizeof(No)); novo->x=info; novo->prox=NULL; if(header==NULL) return novo; else { ant->prox=novo; return novo; } } (C) No* insere(No *header,int info) { No *novo; novo=(No*) malloc(sizeof(No)); novo->x=info; novo->prox=NULL; return novo; } (D) No* insere(No *header,int info) { No *novo; novo=(No*) malloc(sizeof(No)); novo->x=info; novo->prox=header; return novo; } (E) No* insere(No *header,int info) { No *p=header,*ant=NULL,*novo; for(;p!=NULL;p=p->prox) ant=p; novo=(No*) malloc(sizeof(No)); novo->x=info; novo->prox=NULL; if(header==NULL) return novo; else { ant->prox=novo; return header; } }
Compartilhar