示例#1
0
        private int tamanho; // número de elementos na fila

        /**
         * Cria uma fila vazia.
         */
        public FilaFIFO()
        {
            this.cabeça = new Noh("CABEÇA");
            this.tras   = new Noh("VAZIO");
            this.cabeça.SetProximo(this.tras);
            this.frente  = this.tras;
            this.tamanho = 0;
        }
示例#2
0
        /**
         * Enfileira um novo elemento na última posição da fila.
         */
        public void Enfileira(Object novoElemento)
        {
            // seta o novo elemento como o elemento de this.tras
            this.tras.SetElemento(novoElemento);

            // cria um novo Noh para ser o novo tras
            Noh aux = new Noh(null);

            // encadeia o novo nó usando this.tras e aux
            this.tras.SetProximo(aux);

            //atualiza this.tras
            this.tras = this.tras.GetProximo();
            this.tamanho++;
        }
示例#3
0
        public void Desenfileira()
        {
            // se esta fila estiver vazia então indica erro
            if (this.Vazia())
            {
            }
            else
            {
                // desliga o nó referenciado por this.frente
                this.cabeça.SetProximo(this.frente.GetProximo());

                // atualiza this.frente
                this.frente = this.frente.GetProximo();

                // atualiza this.tamanho
                this.tamanho--;
            }
        }
示例#4
0
 public void SetProximo(Noh próximo)
 {
     this.próximo = próximo;
 }