6 #ifndef PERSISTENCE_STACK_HPP_
7 #define PERSISTENCE_STACK_HPP_
9 namespace persistence {
16 template<
class T>
class Node {
62 Node& operator=(
const Node&) =
delete;
126 const T&
Top()
const;
143 const T&
K_th(
int k)
const;
187 #endif // PERSISTENCE_STACK_HPP_
int ptr_ct
Número de pointeiros para o nó.
Definition: Stack.hpp:58
Node< T > * node
Topo da pilha.
Definition: Stack.hpp:101
Nó da pilha persistente.
Definition: Stack.hpp:16
T val
Valor do nó.
Definition: Stack.hpp:20
int Size() const
Tamanho da pilha.
Stack()
Construtor de pilha vazia.
Stack< T > Push(const T &x) const
Inserção da valor.
Node * K_Ancestor(int k)
k-ésimo ancestral.
Node * next
Próximo nó.
Definition: Stack.hpp:25
Pilha persistente.
Definition: Stack.hpp:95
const int depth
Profundidade do nó.
Definition: Stack.hpp:30
Stack< T > Pop() const
Remoção do topo.
const T & Top() const
Topo da pilha.
const T & K_th(int k) const
k-ésimo elemento.
Node * jmp
Nó de pulo.
Definition: Stack.hpp:37