• Matéria: Informática
  • Autor: diegohening
  • Perguntado 7 anos atrás

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:

Respostas

respondido por: mayaravieiraj
2

Oi!

COm o intuito de te orientar a construir o seu próprio algoritmo, segue abaixo um exemplar de programa que faz uma sequencia de 15 operações de inserção e remoção de elementos, aleatoriamente, numa única pilha.

Fique á vontade para fazer pequenas alterações e mudanças, caso queira.


record Nodo {

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

   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 topo

    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

}

Perguntas similares