Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Miguel Angel

[Resolvido] s sobre estrutura de dados

Recommended Posts

Estou com algumas duvidas sobre algoritmos e estrutura de dados porque minha professora é aquele tipo de professora das universidedes publica que chega na sala passa o exercicio e vai embora e manda os alunos pesquisarem nos livros.Por isso gostaria que me ajudassem pois preciso esclarecer essas duvidas para continuar com o conteúdo pra frente.

 

 

1° duvida:

 

quando eu crio uma estrutura(exemplo na linha de baixo).

 

struct{

char nome;

int idade;

}dados;

 

struct dados p; <<--(aqui esta minha duvida,essa variavel "p", o que é?E uma variavel que foi inserida dentro da struct dados??

2°Duvida. Sobre estrutura de dados.

 

typedef int chave;

typedef struct{

int chave;

}tipoItem;

typedef struct Celula_str *apontador; <<-(aqui esta minha duvida,esse ponteiro apontador vai apontar para Celula_str,mas minha duvida é como o

computador ira saber cada vez que for acessado o ponteiro que eu estou me referindo a outra celula??

typedef struct Celula_str{

tipoItem Item;

apontador Prox; <<-(aqui esta minha duvida,essa variavel Prox e um apontador correto?Mas ela aponta pra onde?

}Celula;

 

Typedef struct{

apontador primeiro,ultimo;

}tipolista;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Struct nada mais é que uma "nova variavel" que voce cria.

- entao quando você cria a struct você da um nome a ela certo ?!? entao esse nome é o NOME da sua "NOVA VARIAVEL"

OBS.: você não manipula dados nela em si...você declara uma variavel para ela, igual se ela fosse um INT (você nao manipula um INT você manipula a variavel que voce declara com o TIPO int.

 

1° duvida:

você criou a struct chamada DADOS...logo quando você escreve:

 

dados p;	  \* você declaro uma variavel "p" do TIPO dados *\

2º duvida:

 

entao quando você cria um ponteiro dentre de uma struct, nele é armazenado um endereço de memoria que contem a outra struct

logo é uma struct dentro de outra struct...e para você acessar esses dados dentro da 2º struct você apenas tem que utilizar a "->" ou o "." vai depender da cituaçao...ex.:

 

typedef struct chave
{
int chave;
TipoItem intem;
};

typedef struct TipoItem
{
int celula;
apontador prox;
};

typedef struct apontador
{
int *primeiro;
int *ultimo;
};

você declarou uma variavel "P" do tipo "CHAVE"...como você faz para acessar celula:

p->item.celula

 

como faz para acessar *primeiro:

p->item.prox->*primeiro

 

onde PROX aponta para as variaveis *primeiro e *ultimo que se referem a primeira e ultima posiçao da lista

 

espero ter ajudado...qualquer coisa so falar

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Struct nada mais é que uma "nova variavel" que voce cria.

- entao quando você cria a struct você da um nome a ela certo ?!? entao esse nome é o NOME da sua "NOVA VARIAVEL"

OBS.: você não manipula dados nela em si...você declara uma variavel para ela, igual se ela fosse um INT (você nao manipula um INT você manipula a variavel que voce declara com o TIPO int.

 

1° duvida:

você criou a struct chamada DADOS...logo quando você escreve:

 

dados p;	  \* você declaro uma variavel "p" do TIPO dados *\

2º duvida:

 

entao quando você cria um ponteiro dentre de uma struct, nele é armazenado um endereço de memoria que contem a outra struct

logo é uma struct dentro de outra struct...e para você acessar esses dados dentro da 2º struct você apenas tem que utilizar a "->" ou o "." vai depender da cituaçao...ex.:

 

typedef struct chave
{
int chave;
TipoItem intem;
};

typedef struct TipoItem
{
int celula;
apontador prox;
};

typedef struct apontador
{
int *primeiro;
int *ultimo;
};

você declarou uma variavel "P" do tipo "CHAVE"...como você faz para acessar celula:

p->item.celula

 

como faz para acessar *primeiro:

p->item.prox->*primeiro

 

onde PROX aponta para as variaveis *primeiro e *ultimo que se referem a primeira e ultima posiçao da lista

 

espero ter ajudado...qualquer coisa so falar

Abraços

 

Deixa eu ver se entendi a sua explicação.

Voce disse que se eu definir typedef struct......... eu estarei criando um novo tipo de dado como por (exemplo int,char,etc,)e a variavel que eu criar desse tipo vai conter tudo o que esta dentro dessa struct!?Ou seja a struct e um modelo de tipo de dado e sempre quando eu quiser usar esse tipo de dado irei ter que criar uma variavel daquele tipo...

 

 

Valeu pela ajuda..........

Esclareceu sim a minha duvida.....

Valeu Mesmo....

abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Deixa eu ver se entendi a sua explicação.

Voce disse que se eu definir typedef struct......... eu estarei criando um novo tipo de dado como por (exemplo int,char,etc,)e a variavel que eu criar desse tipo vai conter tudo o que esta dentro dessa struct!?Ou seja a struct e um modelo de tipo de dado e sempre quando eu quiser usar esse tipo de dado irei ter que criar uma variavel daquele tipo...

 

 

Valeu pela ajuda..........

Esclareceu sim a minha duvida.....

Valeu Mesmo....

abraços

É isso mesmo, da pra ir mais a fundo nesse assunto mais a ideia é essa...que bom que deu pra ajudar http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

Abraços!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.