Informática, perguntado por goriok1996, 1 ano atrás

Estrutura de Dados

Questão A

Uma PILHA é uma estrutura de dados “linear” na qual os elementos são inseridos por uma de suas extremidades (normalmente conhecida como “o topo”) e são removidos pela mesma.

Temos muitos exemplos de uso de pilhas no mundo real, como pilha de pratos numa cozinha, pilha de caixas num deposito, entre outras.

O que deve ser realizado na questão:

Esta questão visa verificar sua habilidade de fazer um teste de mesa para pilhas. No teste de mesa, devemos realizar as operações nós mesmos, com papel e caneta; ou no editor de texto, neste caso.

Faça uma sequencia de 15 operações de inserção e remoção de elementos, aleatoriamente, numa única pilha. Mostre o estado da pilha a cada passo. Se a pilha ficar vazia, não tem problema; apenas deixe isto indicado.

Por exemplo, se a sua pilha for de nomes:..........

Soluções para a tarefa

Respondido por mayaravieiraj
0

Oi!

Para te ajudar na criação do algoritmo, abaixo segue um algoritmo que  faz uma sequencia de 15 operações de inserção e remoção de elementos, aleatoriamente, numa única pilha, conforme pede o enunciado.

--> Você pode fazer suas modificações, caso ache pertinente.


record Nodo {

   data  //informação a ser armazenada no nod

   próximo // referência ao próximo nodo; null para o último nodo

}

   record Stack {

    Node stackPointer   // ponteiro para o nodo do topo; valor null para uma pilha vazia

}

 function push(Stack stack, Element element) { // insere elemento em uma pilha

    new(newNode)            // Allocate memory to hold new node

    newNode.data   := element

    newNode.next   := stack.stackPointer

    stack.stackPointer := newNode

}

function pop(Stack stack) { // retira o elemento do topo e retorna o nodo do topo agora

    node := stack.stackPointer

    stack.stackPointer := node.next

    element := node.data      

    return element

}

function top(Stack stack) { // retorna o nodo no top

    return stack.stackPointer.data

}

function length(Stack stack) { // retorna a quantidade de nodos na pilha

    length := 0

    node := stack.stackPointer

    while node not null {

        length := length + 1

        node := node.next

    }

    return length

}


rodrigomviip6b6k0: Bom,agradecendo a tentativa de ajuda,mas o solicitado foi outra,,,, c++
Perguntas interessantes