コード例 #1
0
        public IDado Retirar()
        {
            if (this.Vazia())
            {
                return(null);
            }

            Elemento aux = this.Atual;

            this.Anterior.Proximo = aux.Proximo;
            this.Atual            = aux.Proximo;
            aux.Proximo           = null;

            if (this.Vazia())
            {
                this.Atual.Proximo = this.Atual;
            }

            return(aux.MeuDado);
        }
コード例 #2
0
        public IDado Retirar()
        {
            if (Vazia())
            {
                return(null);
            }

            Elemento auxRetirada = this.Primeiro.Proximo;

            this.Primeiro.Proximo = auxRetirada.Proximo;

            if (auxRetirada.Proximo != null)
            {
                auxRetirada.Proximo = null;
            }
            else
            {
                this.Ultimo = this.Primeiro;
            }

            return(auxRetirada.MeuDado);
        }
コード例 #3
0
        public override string ToString()
        {
            if (Vazia())
            {
                return(null);
            }
            else
            {
                StringBuilder result = new StringBuilder();
                Elemento      aux    = Atual;

                result.AppendLine(aux.MeuDado.ToString());
                aux = aux.Proximo.Proximo;

                while (aux.MeuDado != Atual.MeuDado)
                {
                    result.AppendLine(aux.MeuDado.ToString());
                    aux = aux.Proximo;
                }

                return(result.ToString());
            }
        }
コード例 #4
0
 public ListaCircular()
 {
     this.Atual         = new Elemento(null);
     this.Anterior      = this.Atual; //o anterior é igual ao atual
     this.Atual.Proximo = this.Atual; //apontador do atual aponta para o próprio atual
 }
コード例 #5
0
 public Elemento(IDado dado)
 {
     this.MeuDado = dado;
     Proximo      = null;
 }
コード例 #6
0
 public void Inserir(IDado dado)
 {
     Ultimo = Ultimo.Proximo = new Elemento(dado);
 }
コード例 #7
0
 public Fila()
 {
     this.Ultimo = this.Primeiro = new Elemento(null); //Criação do Sentinela
 }