-
Total de itens
2 -
Registro em
-
Última visita
Posts postados por Manoel Kikachi Mendez
-
-
Boa noite, pessoal.
Estou com um exercício da faculdade sobre Listas Encadeadas Simples, e queria fazer com que a ordem dos nós fique inversa a que inseri nos nós.
Como posso fazer isso?
É basicamente nessa maneira:
**ANTES**
L -> (800, 99.99, Polystation 5) -> (981, 199.99, XCaixa Series Y) -> (345, 299.99, mouse gamer) -> (123, 699.99, teclado) -> NULL
**DEPOIS**
L -> (123, 699.99, teclado) -> (345, 299.99, mouse gamer) -> (981, 199.99, XCaixa Series Y) -> (800, 99.99, Polystation 5) -> NULL
A) Função que inverte o nó da lista
// (d) Retorna a Lista invertida. Se a lista está vazia, retorne uma lista vazia. Lista *inverter(const Lista *L) { // IMPLEMENTE ESTA FUNÇÃO Lista* q; /* variável auxiliar para nova lista */ No *p; int aux; for (p = L; p != NULL; p = p->prox) if (p-> == NULL) { aux = p->prox; p->prox = NULL; return p; } }
B) Structs de `_produto`, `_no` e `_lista`
// struct que define um produto typedef struct _produto { int num_serie; // numero de série do produto char nome[64]; double preço; } Produto;
// struct que define um nó curcular duplamente encadeado typedef struct _no { Produto *prod; struct _no *prox; } No;
// struct que define uma Lista Ligada Simples typedef struct _lista { No *inicio; No *fim; int tamanho; // numero de nós da lista } Lista;
C) Código acionado na `main()`:else if (strcmp(comando, "inverte") == 0) { Lista *L_aux = inverter(L); destroiLista(&L); L = L_aux; }
Dúvida sobre lista encadeada simples - eliminar primeira metade da lista
em Grupo de Estudos
Postado
Bom dia, pessoal.
Espero que eu esteja publicando de forma certa, porque sou novo no fórum e novo na programação.
Então, sobre uma dúvida que estou, mais especificamente em "Listas Encadeadas Simples", é que a função abaixo deve eliminar a primeira metade da lista encadeada.
Eu teria que percorrer toda lista para eliminar a metade da lista, caso seja par.
Será que estou fazendo de forma certa?
Se puderem me ajudar com o código abaixo, será muito bem-vindo!!
Função abaixo:
Struct _no, _produto e _lista (não tá na ordem, mas está aqui):