SlideShare uma empresa Scribd logo
1 de 7
Baixar para ler offline
11/10/21, 12:26 Criando uma lista encadeada em C. Neste artigo vamos criar uma linked… | by Israel Junior | AprendaCPP | Medium
https://medium.com/aprendacpp/criando-uma-lista-encadeada-em-c-17e7f5692f36 1/7
Criando uma lista encadeada em C
Israel Junior Follow
Feb 20, 2019 · 2 min read
Neste artigo vamos criar uma linked list usando a linguagem C
11/10/21, 12:26 Criando uma lista encadeada em C. Neste artigo vamos criar uma linked… | by Israel Junior | AprendaCPP | Medium
https://medium.com/aprendacpp/criando-uma-lista-encadeada-em-c-17e7f5692f36 2/7
Linked list ou lista encadeada e um tipo de estrutura de dados que contém
um grupo de nos interligados através de ponteiros, onde o ponteiro dentro
da estrutura aponta para o próximo nó até que o ponteiro seja NULL
indicando assim o fim da lista.
Nesse exemplo vou mostrar um lista simples com um único valor inteiro e
um ponteiro para exemplificar a construção de uma lista encadeada
simples.
11/10/21, 12:26 Criando uma lista encadeada em C. Neste artigo vamos criar uma linked… | by Israel Junior | AprendaCPP | Medium
https://medium.com/aprendacpp/criando-uma-lista-encadeada-em-c-17e7f5692f36 3/7
O início aponta para um ponteiro que inicia a estrutura ou o primeiro nó da
lista e no final o ponteiro aponta para um Null indicando o fim da lista.
Estrutura de dados na linguagem C e um tema muito abrangente e tem
muitos tópicos mas aqui vamos usar como referência uma estrutura bem
simples pra facilitar o entendimento e a execução do exemplo.
A estrutura que vamos criar seria assim:
struct *node

{

int numero;

struct node *pLink;

}
E para criar o link entre os nós vamos usar o seguinte código.
11/10/21, 12:26 Criando uma lista encadeada em C. Neste artigo vamos criar uma linked… | by Israel Junior | AprendaCPP | Medium
https://medium.com/aprendacpp/criando-uma-lista-encadeada-em-c-17e7f5692f36 4/7
struct node *p = (struct node*) malloc(sizeof(struct node*));
Malloc vai alocar uma porção da memória para receber a nossa lista, após
criarmos a lista vamos atualizar o pLink com a posição de cada elemento
novo que criarmos.
A implementação completa do código de exemplo segue abaixo.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
#include <stdlib.h>
//Estrutura base do nó.
struct node
{
int nData;
struct node *pLink;
};
//Função pra printar o nó na tela.
void displayLL(struct node *p)
{
printf("Mostrando a lista:n");
if(p)
{
do
{
11/10/21, 12:26 Criando uma lista encadeada em C. Neste artigo vamos criar uma linked… | by Israel Junior | AprendaCPP | Medium
https://medium.com/aprendacpp/criando-uma-lista-encadeada-em-c-17e7f5692f36 5/7
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
{
printf(" %d", p->nData);
p=p->pLink;
}
while(p);
}
else
printf("Lista vazia.");
}
int main(void)
{
struct node *pNode1 = NULL;
struct node *pNode2 = NULL;
struct node *pNode3 = NULL;
//Criando os nos e associando os dados.
pNode1 = (struct node*) malloc(sizeof(struct node*));
pNode1->nData = 10;
pNode2 = (struct node*) malloc(sizeof(struct node*));
pNode2->nData = 20;
pNode3 = (struct node*) malloc(sizeof(struct node*));
pNode3->nData = 30;
//Conectando os nós
pNode1->pLink = pNode2;
pNode2->pLink = pNode3;
pNode3->pLink = NULL;
11/10/21, 12:26 Criando uma lista encadeada em C. Neste artigo vamos criar uma linked… | by Israel Junior | AprendaCPP | Medium
https://medium.com/aprendacpp/criando-uma-lista-encadeada-em-c-17e7f5692f36 6/7
Para compilar eu utilizei o gcc $ gcc -o linked_list linked_list.c
Este e um exemplo simples mas que eu acho muito interessante para
começarmos a compreender como funciona as listas encadeadas na
linguagem C.
Cpp Cpp11 Linguagem C
Learn more.
Medium is an open platform where 170 million
readers come to find insightful and dynamic
thinking. Here, expert and undiscovered voices
alike dive into the heart of any topic and bring
new ideas to the surface. Learn more
Make Medium yours.
Follow the writers, publications, and topics that
matter to you, and you’ll see them on your
homepage and in your inbox. Explore
Write a story on Medium.
If you have a story to tell, knowledge to share, or
a perspective to offer — welcome home. It’s
easy and free to post your thinking on any topic.
Start a blog
view raw
52
53
54
55
56
57
linked_list.c
hosted with ❤ by GitHub
//Mostrando a lista.
if(pNode1)
displayLL(pNode1);
return 0;
}
11/10/21, 12:26 Criando uma lista encadeada em C. Neste artigo vamos criar uma linked… | by Israel Junior | AprendaCPP | Medium
https://medium.com/aprendacpp/criando-uma-lista-encadeada-em-c-17e7f5692f36 7/7
About Write Help Legal

Mais conteúdo relacionado

Mais procurados

Mais procurados (13)

Lista encadeada de inteiros
Lista encadeada de inteirosLista encadeada de inteiros
Lista encadeada de inteiros
 
Pilha e Fila Dinamica
Pilha e Fila DinamicaPilha e Fila Dinamica
Pilha e Fila Dinamica
 
Estruturas de Dados em C#
Estruturas de Dados em C#Estruturas de Dados em C#
Estruturas de Dados em C#
 
Estrutura de Dados - Listas Encadeadas
Estrutura de Dados - Listas EncadeadasEstrutura de Dados - Listas Encadeadas
Estrutura de Dados - Listas Encadeadas
 
Lista de inteiros
Lista de inteirosLista de inteiros
Lista de inteiros
 
Estrutura de dados - Implementação de filas com listas
Estrutura de dados - Implementação de filas com listasEstrutura de dados - Implementação de filas com listas
Estrutura de dados - Implementação de filas com listas
 
Estrutura de dados em Java - Filas
Estrutura de dados em Java - Filas Estrutura de dados em Java - Filas
Estrutura de dados em Java - Filas
 
Estrutura de dados em Java - Filas com lista encadeada
Estrutura de dados em Java - Filas com lista encadeada Estrutura de dados em Java - Filas com lista encadeada
Estrutura de dados em Java - Filas com lista encadeada
 
Estrutura de dados - Filas
Estrutura de dados - FilasEstrutura de dados - Filas
Estrutura de dados - Filas
 
Exercício de estrutura de dados 01
Exercício de estrutura de dados 01Exercício de estrutura de dados 01
Exercício de estrutura de dados 01
 
O comando SELECT (JOIN)
O comando SELECT (JOIN)O comando SELECT (JOIN)
O comando SELECT (JOIN)
 
LabMM4 (T17 - 12/13)
LabMM4 (T17 - 12/13)LabMM4 (T17 - 12/13)
LabMM4 (T17 - 12/13)
 
Lpiii dp-apostila
Lpiii dp-apostilaLpiii dp-apostila
Lpiii dp-apostila
 

Mais de Ademar Trindade

pesquisa-mercadolc3b3gica-aula-2-2017.ppt
pesquisa-mercadolc3b3gica-aula-2-2017.pptpesquisa-mercadolc3b3gica-aula-2-2017.ppt
pesquisa-mercadolc3b3gica-aula-2-2017.pptAdemar Trindade
 
va_Arte_Pesquisar_II_Estratégia_busca_fontes_informação_2019.ppt
va_Arte_Pesquisar_II_Estratégia_busca_fontes_informação_2019.pptva_Arte_Pesquisar_II_Estratégia_busca_fontes_informação_2019.ppt
va_Arte_Pesquisar_II_Estratégia_busca_fontes_informação_2019.pptAdemar Trindade
 
AULA_ORIENTATIVO_TCC.pptx
AULA_ORIENTATIVO_TCC.pptxAULA_ORIENTATIVO_TCC.pptx
AULA_ORIENTATIVO_TCC.pptxAdemar Trindade
 
AULA_INTRODUÇÃO_PARTE_1.pptx
AULA_INTRODUÇÃO_PARTE_1.pptxAULA_INTRODUÇÃO_PARTE_1.pptx
AULA_INTRODUÇÃO_PARTE_1.pptxAdemar Trindade
 
AULA_INTRODUÇÃO_PARTE_0.pptx
AULA_INTRODUÇÃO_PARTE_0.pptxAULA_INTRODUÇÃO_PARTE_0.pptx
AULA_INTRODUÇÃO_PARTE_0.pptxAdemar Trindade
 
TCC Tiago Barreto de Lima.pdf
TCC Tiago Barreto de Lima.pdfTCC Tiago Barreto de Lima.pdf
TCC Tiago Barreto de Lima.pdfAdemar Trindade
 
Simulando infraestruturas-computacionais-para-a-ubicomp
Simulando infraestruturas-computacionais-para-a-ubicompSimulando infraestruturas-computacionais-para-a-ubicomp
Simulando infraestruturas-computacionais-para-a-ubicompAdemar Trindade
 
63924715 xxi-simposio-brasileiro-de-redes-de-computadores
63924715 xxi-simposio-brasileiro-de-redes-de-computadores63924715 xxi-simposio-brasileiro-de-redes-de-computadores
63924715 xxi-simposio-brasileiro-de-redes-de-computadoresAdemar Trindade
 
2007 alexandre rodriguesgomes
2007 alexandre rodriguesgomes2007 alexandre rodriguesgomes
2007 alexandre rodriguesgomesAdemar Trindade
 
170557670 pesquisa-e-ordenacao
170557670 pesquisa-e-ordenacao170557670 pesquisa-e-ordenacao
170557670 pesquisa-e-ordenacaoAdemar Trindade
 
7082 texto do artigo-33807-2-10-20180903
7082 texto do artigo-33807-2-10-201809037082 texto do artigo-33807-2-10-20180903
7082 texto do artigo-33807-2-10-20180903Ademar Trindade
 

Mais de Ademar Trindade (20)

pesquisa-mercadolc3b3gica-aula-2-2017.ppt
pesquisa-mercadolc3b3gica-aula-2-2017.pptpesquisa-mercadolc3b3gica-aula-2-2017.ppt
pesquisa-mercadolc3b3gica-aula-2-2017.ppt
 
pesquisacientifica.ppt
pesquisacientifica.pptpesquisacientifica.ppt
pesquisacientifica.ppt
 
aula-091.ppt
aula-091.pptaula-091.ppt
aula-091.ppt
 
va_Arte_Pesquisar_II_Estratégia_busca_fontes_informação_2019.ppt
va_Arte_Pesquisar_II_Estratégia_busca_fontes_informação_2019.pptva_Arte_Pesquisar_II_Estratégia_busca_fontes_informação_2019.ppt
va_Arte_Pesquisar_II_Estratégia_busca_fontes_informação_2019.ppt
 
AULA_ORIENTATIVO_TCC.pptx
AULA_ORIENTATIVO_TCC.pptxAULA_ORIENTATIVO_TCC.pptx
AULA_ORIENTATIVO_TCC.pptx
 
AULA_INTRODUÇÃO_PARTE_1.pptx
AULA_INTRODUÇÃO_PARTE_1.pptxAULA_INTRODUÇÃO_PARTE_1.pptx
AULA_INTRODUÇÃO_PARTE_1.pptx
 
AULA_INTRODUÇÃO_PARTE_0.pptx
AULA_INTRODUÇÃO_PARTE_0.pptxAULA_INTRODUÇÃO_PARTE_0.pptx
AULA_INTRODUÇÃO_PARTE_0.pptx
 
TCC Tiago Barreto de Lima.pdf
TCC Tiago Barreto de Lima.pdfTCC Tiago Barreto de Lima.pdf
TCC Tiago Barreto de Lima.pdf
 
Simulando infraestruturas-computacionais-para-a-ubicomp
Simulando infraestruturas-computacionais-para-a-ubicompSimulando infraestruturas-computacionais-para-a-ubicomp
Simulando infraestruturas-computacionais-para-a-ubicomp
 
Isa madapt tese
Isa madapt teseIsa madapt tese
Isa madapt tese
 
Internet das-coisas
Internet das-coisasInternet das-coisas
Internet das-coisas
 
Artigo ihc1
Artigo ihc1Artigo ihc1
Artigo ihc1
 
63924715 xxi-simposio-brasileiro-de-redes-de-computadores
63924715 xxi-simposio-brasileiro-de-redes-de-computadores63924715 xxi-simposio-brasileiro-de-redes-de-computadores
63924715 xxi-simposio-brasileiro-de-redes-de-computadores
 
4452
44524452
4452
 
2007 alexandre rodriguesgomes
2007 alexandre rodriguesgomes2007 alexandre rodriguesgomes
2007 alexandre rodriguesgomes
 
926 4624-1-pb
926 4624-1-pb926 4624-1-pb
926 4624-1-pb
 
45
4545
45
 
170557670 pesquisa-e-ordenacao
170557670 pesquisa-e-ordenacao170557670 pesquisa-e-ordenacao
170557670 pesquisa-e-ordenacao
 
7082 texto do artigo-33807-2-10-20180903
7082 texto do artigo-33807-2-10-201809037082 texto do artigo-33807-2-10-20180903
7082 texto do artigo-33807-2-10-20180903
 
00011
0001100011
00011
 

Lista Encadeada C

  • 1. 11/10/21, 12:26 Criando uma lista encadeada em C. Neste artigo vamos criar uma linked… | by Israel Junior | AprendaCPP | Medium https://medium.com/aprendacpp/criando-uma-lista-encadeada-em-c-17e7f5692f36 1/7 Criando uma lista encadeada em C Israel Junior Follow Feb 20, 2019 · 2 min read Neste artigo vamos criar uma linked list usando a linguagem C
  • 2. 11/10/21, 12:26 Criando uma lista encadeada em C. Neste artigo vamos criar uma linked… | by Israel Junior | AprendaCPP | Medium https://medium.com/aprendacpp/criando-uma-lista-encadeada-em-c-17e7f5692f36 2/7 Linked list ou lista encadeada e um tipo de estrutura de dados que contém um grupo de nos interligados através de ponteiros, onde o ponteiro dentro da estrutura aponta para o próximo nó até que o ponteiro seja NULL indicando assim o fim da lista. Nesse exemplo vou mostrar um lista simples com um único valor inteiro e um ponteiro para exemplificar a construção de uma lista encadeada simples.
  • 3. 11/10/21, 12:26 Criando uma lista encadeada em C. Neste artigo vamos criar uma linked… | by Israel Junior | AprendaCPP | Medium https://medium.com/aprendacpp/criando-uma-lista-encadeada-em-c-17e7f5692f36 3/7 O início aponta para um ponteiro que inicia a estrutura ou o primeiro nó da lista e no final o ponteiro aponta para um Null indicando o fim da lista. Estrutura de dados na linguagem C e um tema muito abrangente e tem muitos tópicos mas aqui vamos usar como referência uma estrutura bem simples pra facilitar o entendimento e a execução do exemplo. A estrutura que vamos criar seria assim: struct *node { int numero; struct node *pLink; } E para criar o link entre os nós vamos usar o seguinte código.
  • 4. 11/10/21, 12:26 Criando uma lista encadeada em C. Neste artigo vamos criar uma linked… | by Israel Junior | AprendaCPP | Medium https://medium.com/aprendacpp/criando-uma-lista-encadeada-em-c-17e7f5692f36 4/7 struct node *p = (struct node*) malloc(sizeof(struct node*)); Malloc vai alocar uma porção da memória para receber a nossa lista, após criarmos a lista vamos atualizar o pLink com a posição de cada elemento novo que criarmos. A implementação completa do código de exemplo segue abaixo. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 #include <stdio.h> #include <stdlib.h> //Estrutura base do nó. struct node { int nData; struct node *pLink; }; //Função pra printar o nó na tela. void displayLL(struct node *p) { printf("Mostrando a lista:n"); if(p) { do {
  • 5. 11/10/21, 12:26 Criando uma lista encadeada em C. Neste artigo vamos criar uma linked… | by Israel Junior | AprendaCPP | Medium https://medium.com/aprendacpp/criando-uma-lista-encadeada-em-c-17e7f5692f36 5/7 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 { printf(" %d", p->nData); p=p->pLink; } while(p); } else printf("Lista vazia."); } int main(void) { struct node *pNode1 = NULL; struct node *pNode2 = NULL; struct node *pNode3 = NULL; //Criando os nos e associando os dados. pNode1 = (struct node*) malloc(sizeof(struct node*)); pNode1->nData = 10; pNode2 = (struct node*) malloc(sizeof(struct node*)); pNode2->nData = 20; pNode3 = (struct node*) malloc(sizeof(struct node*)); pNode3->nData = 30; //Conectando os nós pNode1->pLink = pNode2; pNode2->pLink = pNode3; pNode3->pLink = NULL;
  • 6. 11/10/21, 12:26 Criando uma lista encadeada em C. Neste artigo vamos criar uma linked… | by Israel Junior | AprendaCPP | Medium https://medium.com/aprendacpp/criando-uma-lista-encadeada-em-c-17e7f5692f36 6/7 Para compilar eu utilizei o gcc $ gcc -o linked_list linked_list.c Este e um exemplo simples mas que eu acho muito interessante para começarmos a compreender como funciona as listas encadeadas na linguagem C. Cpp Cpp11 Linguagem C Learn more. Medium is an open platform where 170 million readers come to find insightful and dynamic thinking. Here, expert and undiscovered voices alike dive into the heart of any topic and bring new ideas to the surface. Learn more Make Medium yours. Follow the writers, publications, and topics that matter to you, and you’ll see them on your homepage and in your inbox. Explore Write a story on Medium. If you have a story to tell, knowledge to share, or a perspective to offer — welcome home. It’s easy and free to post your thinking on any topic. Start a blog view raw 52 53 54 55 56 57 linked_list.c hosted with ❤ by GitHub //Mostrando a lista. if(pNode1) displayLL(pNode1); return 0; }
  • 7. 11/10/21, 12:26 Criando uma lista encadeada em C. Neste artigo vamos criar uma linked… | by Israel Junior | AprendaCPP | Medium https://medium.com/aprendacpp/criando-uma-lista-encadeada-em-c-17e7f5692f36 7/7 About Write Help Legal