Jump to content
Fórum Script Brasil
  • 0

Dúvida- Esse código é encadeado ou duplamente encadeado?


walkyrr
 Share

Question

Estou com duvida se esse código e simplesmente encadeado ou duplamente encadeado, alguém pode me ajudar?

Isso é uma implementação de um Deque.

 

#include <stdio.h>
#include <stdlib.h>

typedef struct TipoCelula *TipoApontador;

typedef int TipoChave;

typedef struct TipoItem
{
    TipoChave Chave;
} TipoItem;

typedef struct TipoCelula
{
    TipoItem Item;
    TipoApontador Prox;
} TipoCelula;

typedef struct TipoDeque
{
    TipoApontador Frente, Tras;
} TipoDeque;
void IniciaDeque(TipoDeque *Deque)
{
    Deque->Frente = (TipoApontador) malloc(sizeof(TipoCelula));
    Deque->Tras = Deque->Frente;
    Deque->Frente->Prox = NULL;
}

int Vazio(TipoDeque Deque)
{
    return (Deque.Frente == Deque.Tras);
}

void InsereUltimo(TipoItem x, TipoDeque *Deque)
{
    if (Vazio (*Deque))
        printf("\nO item %d foi o primeiro a ser inserido no Deque\n\n",x.Chave);
    else printf("\nO item %d foi inserido no final do Deque\n\n",x.Chave);
    Deque->Tras->Prox = (TipoApontador) malloc(sizeof(TipoCelula));
    Deque->Tras = Deque->Tras->Prox;
    Deque->Tras->Item = x;
    Deque->Tras->Prox = NULL;
}
void InserePrimeiro (TipoItem x, TipoDeque *Deque)
{
    TipoApontador novo;
    if (Vazio (*Deque))
    {
        InsereUltimo(x, Deque);
    }
    else
    {
        novo = (TipoApontador) malloc(sizeof(TipoCelula));
        novo -> Prox = Deque->Frente-> Prox;
        Deque->Frente-> Prox= novo;
        novo -> Item = x;
        printf("\nO item %d foi inserido no inicio do Deque\n\n",x.Chave);
    }
}

Link to comment
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Forum Statistics

    • Total Topics
      149.6k
    • Total Posts
      646.2k
×
×
  • Create New...