SlideShare una empresa de Scribd logo
1 de 15
Estruturas de Dados

Prof. Ms. Fabricio Lopes Sanchez
Tópicos
• Estrutura de dados? O que é?
• Principais estruturas de dados
  – Vetores (arrays)
  – Pilha
  – Listas
  – Filas
  – Outras estruturas
• Onde pilhas são utilizadas?
Estrutura de dados: o que é?
“Estrutura de dados é o ramo da computação
   que estuda os diversos mecanismos de
   organização de dados para atender aos
  diferentes requisitos de processamento.”


      Vamos detalhar essa
         informação?
Estrutura de dados: o que é?


 Módulo 1   Módulo 2   Módulo 3




   Programa de computador

 Módulo 4   Módulo 5   Módulo 6
Estrutura de dados: o que é?
Uma estrutura de dados pode ser dividida em
dois pilares fundamentais: dado e estrutura

 Dado                        Estrutura
  Elemento que possui        Elemento estrutural que
  valor agregado e que       responsável por carregar
  pode ser utilizado para    as informações dentro de
  solucionar problemas       uma estrutura de
  computacionais. Os dados   software.
  possuem tipos
  específicos.
Estrutura de dados: o que é?
Uma estrutura de dados pode ser dividida em
dois pilares fundamentais: dado e estrutura

 Dado                         Estrutura
  Tipos de dados:             Estruturas:
  - Inteiro (int)             - Vetores
  - Texto (string)               multidimensionais
  - Caracter (char)           - Pilhas
  - Ponto flutuante (float)   - Filas
  - Ponto flutuante           - Listas
     (double)
Principais tipos de estruturas de dados
Vetores (unidimensionais e bidimensionais)
É uma das estruturas de dados mais simples e mais
utilizadas dentre todas. Principais características:
   –   Adição e pesquisa de novos elementos de forma aleatória
   –   Acesso aos elementos através de índices
   –   Possuem tamanho finito de elementos
   –   Carregam dados de tipos específicos
   –   Indexação com início em 0 (zero)
   –   Unidimensionais: apenas linha
   –   Bidimensionais: linhas e colunas (formato de matriz)
Principais tipos de estruturas de dados
Vetores unidimensionais (int vetor[8];)

                            vetor
      10       2     5    27 34 789 33                0
       0       1     2     3    4     5      6        7


           •   vetor[0] = 10;   •   vetor[4] = 34;
           •   vetor[1] = 2;    •   vetor[5] = 789;
           •   vetor[2] = 5;    •   vetor[6] = 33;
           •   vetor[3] = 27;   •   vetor[7] = 0;
Principais tipos de estruturas de dados
Vetores bidimensionais (int vetorb[2][2];)

                                0    1
   •   vetorb[0][0] = 10;
   •   vetorb[0][1] = 2;
                            0   10   2
   •   vetorb[1][0] = 34;
                                         vetorb
   •   vetorb[1][1] = 50;   1   34 50
Principais tipos de estruturas de dados
Pilha
É uma estrutura de dados amplamente utilizada e que
implementa a ideia de pilha de elementos:
  –   LIFO (Last-In-First-Out)
  –   Permite a adição e remoção de elementos
  –   O elemento a ser removido é sempre aquele mais novo
  –   Simula a ideia de pilhas de elementos
  –   Para que o acesso a um elemento da pilha ocorra, os
      demais acima devem ser removidos
Principais tipos de estruturas de dados
• Pilha NovaPilha = new Pilha();

• NovaPilha.Add(2);
• NovaPilha.Add(3);
• NovaPilha.Add(6);

• NovaPilha.Remove(3);             6
                                   3
                                   2
Principais tipos de estruturas de dados
Lista
É uma estrutura de dados amplamente utilizada e que
implementa a ideia de lista de elementos:
  –   FIFO (First-In-First-Out)
  –   Permite a adição e remoção de elementos
  –   O elemento a ser removido é sempre o primeiro a entrar
  –   As operações de entrada e saída sempre ocorrem nas
      extremidades
Principais tipos de estruturas de dados

         • Lista NovaLista = new Lista();

         •   NovaLista.Add(2);
         •   NovaLista.Add(3);
         •   NovaLista.Add(6);
         •   NovaLista.Add(12);




        12          6             3         2
Outras estruturas
•   Árvores
•   Árvores binárias
•   Pilhas, listas e filas dinâmicas e encadeadas
•   Grafo
•   Tabela Hashing
•   Etc.
Aplicações
• Estruturas de dados são muito utilizadas em
  aplicações de nível mais baixo, tais como:
  – Implementação de estruturas de bancos de dados
  – Compiladores e interpretadores
  – Editores de texto
  – Kernel de sistemas operacionais
  – Etc.

Más contenido relacionado

La actualidad más candente

Introdução a estruturas de dados em python
Introdução a estruturas de dados em pythonIntrodução a estruturas de dados em python
Introdução a estruturas de dados em pythonAlvaro Oliveira
 
Banco de Dados - Modelo Lógico, Chave primária e Chave estrangeira
Banco de Dados - Modelo Lógico, Chave primária e Chave estrangeiraBanco de Dados - Modelo Lógico, Chave primária e Chave estrangeira
Banco de Dados - Modelo Lógico, Chave primária e Chave estrangeiraNatanael Simões
 
Sistemas Operacionais - Aula 06 (Estrutura do S.O)
Sistemas Operacionais - Aula 06 (Estrutura do S.O)Sistemas Operacionais - Aula 06 (Estrutura do S.O)
Sistemas Operacionais - Aula 06 (Estrutura do S.O)Leinylson Fontinele
 
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...Leinylson Fontinele
 
Estrutura de Dados - Aula de revisão de C na prática
Estrutura de Dados - Aula de revisão de C na práticaEstrutura de Dados - Aula de revisão de C na prática
Estrutura de Dados - Aula de revisão de C na práticaLeinylson Fontinele
 
Banco de Dados - Introdução - Projeto de Banco de Dados - DER
Banco de Dados - Introdução - Projeto de Banco de Dados - DERBanco de Dados - Introdução - Projeto de Banco de Dados - DER
Banco de Dados - Introdução - Projeto de Banco de Dados - DERRangel Javier
 
Estrutura de Dados - Aula 02
Estrutura de Dados - Aula 02Estrutura de Dados - Aula 02
Estrutura de Dados - Aula 02thomasdacosta
 
Material aula informática básica
Material aula informática básicaMaterial aula informática básica
Material aula informática básicaCarlos Melo
 
Estrutura de Dados - Aula 03 - Ponteiros e Funções
Estrutura de Dados - Aula 03 - Ponteiros e FunçõesEstrutura de Dados - Aula 03 - Ponteiros e Funções
Estrutura de Dados - Aula 03 - Ponteiros e FunçõesLeinylson Fontinele
 
Estrutura de Dados - Aula de revisão de c na prática
Estrutura de Dados - Aula de revisão de c na práticaEstrutura de Dados - Aula de revisão de c na prática
Estrutura de Dados - Aula de revisão de c na práticaLeinylson Fontinele
 
1.Introdução Banco de Dados
1.Introdução Banco de Dados1.Introdução Banco de Dados
1.Introdução Banco de Dadosvini_campos
 
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)Leinylson Fontinele
 
Prática de laboratório utilizando views, stored procedures e triggers
Prática de laboratório   utilizando views, stored procedures e triggersPrática de laboratório   utilizando views, stored procedures e triggers
Prática de laboratório utilizando views, stored procedures e triggersDaniel Maia
 
Sistemas operacionais
Sistemas operacionaisSistemas operacionais
Sistemas operacionaisvini_campos
 

La actualidad más candente (20)

Introdução a estruturas de dados em python
Introdução a estruturas de dados em pythonIntrodução a estruturas de dados em python
Introdução a estruturas de dados em python
 
Banco de Dados - Modelo Lógico, Chave primária e Chave estrangeira
Banco de Dados - Modelo Lógico, Chave primária e Chave estrangeiraBanco de Dados - Modelo Lógico, Chave primária e Chave estrangeira
Banco de Dados - Modelo Lógico, Chave primária e Chave estrangeira
 
Aula 4 banco de dados
Aula 4   banco de dados Aula 4   banco de dados
Aula 4 banco de dados
 
Sistemas Operacionais - Aula 06 (Estrutura do S.O)
Sistemas Operacionais - Aula 06 (Estrutura do S.O)Sistemas Operacionais - Aula 06 (Estrutura do S.O)
Sistemas Operacionais - Aula 06 (Estrutura do S.O)
 
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
Estrutura de dados - Aula de Revisão (Linguagem C/C++, Função, Vetor, Matriz,...
 
Estrutura de Dados - Aula de revisão de C na prática
Estrutura de Dados - Aula de revisão de C na práticaEstrutura de Dados - Aula de revisão de C na prática
Estrutura de Dados - Aula de revisão de C na prática
 
Linguagem C - Vetores
Linguagem C - VetoresLinguagem C - Vetores
Linguagem C - Vetores
 
Banco de Dados - Introdução - Projeto de Banco de Dados - DER
Banco de Dados - Introdução - Projeto de Banco de Dados - DERBanco de Dados - Introdução - Projeto de Banco de Dados - DER
Banco de Dados - Introdução - Projeto de Banco de Dados - DER
 
Aula 06 - Sistema Binário
Aula 06 - Sistema BinárioAula 06 - Sistema Binário
Aula 06 - Sistema Binário
 
Estrutura de Dados - Aula 02
Estrutura de Dados - Aula 02Estrutura de Dados - Aula 02
Estrutura de Dados - Aula 02
 
POO - 14 - Vetores
POO - 14 - VetoresPOO - 14 - Vetores
POO - 14 - Vetores
 
Material aula informática básica
Material aula informática básicaMaterial aula informática básica
Material aula informática básica
 
Estrutura de Dados - Aula 03 - Ponteiros e Funções
Estrutura de Dados - Aula 03 - Ponteiros e FunçõesEstrutura de Dados - Aula 03 - Ponteiros e Funções
Estrutura de Dados - Aula 03 - Ponteiros e Funções
 
Estrutura de Dados - Aula de revisão de c na prática
Estrutura de Dados - Aula de revisão de c na práticaEstrutura de Dados - Aula de revisão de c na prática
Estrutura de Dados - Aula de revisão de c na prática
 
Aula I - Word
Aula I - WordAula I - Word
Aula I - Word
 
1.Introdução Banco de Dados
1.Introdução Banco de Dados1.Introdução Banco de Dados
1.Introdução Banco de Dados
 
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
Banco de Dados I - Aula 05 - Banco de Dados Relacional (Modelo Conceitual)
 
Prática de laboratório utilizando views, stored procedures e triggers
Prática de laboratório   utilizando views, stored procedures e triggersPrática de laboratório   utilizando views, stored procedures e triggers
Prática de laboratório utilizando views, stored procedures e triggers
 
Sistemas operacionais
Sistemas operacionaisSistemas operacionais
Sistemas operacionais
 
Estrutura de Dados - Registros
Estrutura de Dados - RegistrosEstrutura de Dados - Registros
Estrutura de Dados - Registros
 

Destacado

Estrutura de dados - Variáveis homogêneas e Heterogêneas
Estrutura de dados - Variáveis homogêneas e HeterogêneasEstrutura de dados - Variáveis homogêneas e Heterogêneas
Estrutura de dados - Variáveis homogêneas e HeterogêneasAdriano Teixeira de Souza
 
Estrutura de Dados - Aula 04 - Listas Estáticas
Estrutura de Dados - Aula 04 - Listas EstáticasEstrutura de Dados - Aula 04 - Listas Estáticas
Estrutura de Dados - Aula 04 - Listas EstáticasLeinylson Fontinele
 
Estrutura de Dados - Procedimentos e Funções
Estrutura de Dados - Procedimentos e FunçõesEstrutura de Dados - Procedimentos e Funções
Estrutura de Dados - Procedimentos e FunçõesAdriano Teixeira de Souza
 
Modelos de banco de dados
Modelos de banco de dadosModelos de banco de dados
Modelos de banco de dadosEdgar Stuart
 
Estrutura de Dados Aula 04 - Listas Estáticas
Estrutura de Dados Aula 04 - Listas EstáticasEstrutura de Dados Aula 04 - Listas Estáticas
Estrutura de Dados Aula 04 - Listas EstáticasLeinylson Fontinele
 
Estrutura de Dados - Alocação dinâmica de memória
Estrutura de Dados - Alocação dinâmica de memóriaEstrutura de Dados - Alocação dinâmica de memória
Estrutura de Dados - Alocação dinâmica de memóriaAdriano Teixeira de Souza
 
Aula 01 -_pilhas_e_filas_com_vetores-oop
Aula 01 -_pilhas_e_filas_com_vetores-oopAula 01 -_pilhas_e_filas_com_vetores-oop
Aula 01 -_pilhas_e_filas_com_vetores-oopJean Martina
 
Estrutura de dados
Estrutura de dadosEstrutura de dados
Estrutura de dadosNegoTux Jean
 

Destacado (20)

Estruturas de dados
Estruturas de dadosEstruturas de dados
Estruturas de dados
 
Estrutura de dados - Filas
Estrutura de dados - FilasEstrutura de dados - Filas
Estrutura de dados - Filas
 
Estrutura de dados - Pilhas
Estrutura de dados - PilhasEstrutura de dados - Pilhas
Estrutura de dados - Pilhas
 
Estrutura de dados - Variáveis homogêneas e Heterogêneas
Estrutura de dados - Variáveis homogêneas e HeterogêneasEstrutura de dados - Variáveis homogêneas e Heterogêneas
Estrutura de dados - Variáveis homogêneas e Heterogêneas
 
Estrutura de dados em Java - Pilhas
Estrutura de dados em Java - PilhasEstrutura de dados em Java - Pilhas
Estrutura de dados em Java - Pilhas
 
Estrutura de dados em Java - Filas
Estrutura de dados em Java - FilasEstrutura de dados em Java - Filas
Estrutura de dados em Java - Filas
 
Estrutura de Dados - Aula 04 - Listas Estáticas
Estrutura de Dados - Aula 04 - Listas EstáticasEstrutura de Dados - Aula 04 - Listas Estáticas
Estrutura de Dados - Aula 04 - Listas Estáticas
 
Estrutura de Dados - Procedimentos e Funções
Estrutura de Dados - Procedimentos e FunçõesEstrutura de Dados - Procedimentos e Funções
Estrutura de Dados - Procedimentos e Funções
 
Modelos de banco de dados
Modelos de banco de dadosModelos de banco de dados
Modelos de banco de dados
 
Pilhas e Filas
Pilhas e FilasPilhas e Filas
Pilhas e Filas
 
Estrutura de Dados Aula 04 - Listas Estáticas
Estrutura de Dados Aula 04 - Listas EstáticasEstrutura de Dados Aula 04 - Listas Estáticas
Estrutura de Dados Aula 04 - Listas Estáticas
 
Estrutura de Dados em Java (Introdução)
Estrutura de Dados em Java (Introdução)Estrutura de Dados em Java (Introdução)
Estrutura de Dados em Java (Introdução)
 
Estrutura de dados em Java - Filas
Estrutura de dados em Java - Filas Estrutura de dados em Java - Filas
Estrutura de dados em Java - Filas
 
Tipos Abstratos de Dados e Encapsulamento
Tipos Abstratos de Dados e EncapsulamentoTipos Abstratos de Dados e Encapsulamento
Tipos Abstratos de Dados e Encapsulamento
 
Estrutura de Dados - Alocação dinâmica de memória
Estrutura de Dados - Alocação dinâmica de memóriaEstrutura de Dados - Alocação dinâmica de memória
Estrutura de Dados - Alocação dinâmica de memória
 
Pilha e filas
Pilha e filasPilha e filas
Pilha e filas
 
Aula 01 -_pilhas_e_filas_com_vetores-oop
Aula 01 -_pilhas_e_filas_com_vetores-oopAula 01 -_pilhas_e_filas_com_vetores-oop
Aula 01 -_pilhas_e_filas_com_vetores-oop
 
Estrutura de dados
Estrutura de dadosEstrutura de dados
Estrutura de dados
 
Estrutura de Dados - Listas Encadeadas
Estrutura de Dados - Listas EncadeadasEstrutura de Dados - Listas Encadeadas
Estrutura de Dados - Listas Encadeadas
 
Pilha e Fila Estática
Pilha e Fila EstáticaPilha e Fila Estática
Pilha e Fila Estática
 

Similar a Estruturas de Dados: Vetores, Pilhas e Listas

Isc aula 5 - estrutura e organização da informação
Isc   aula 5 - estrutura e organização da informaçãoIsc   aula 5 - estrutura e organização da informação
Isc aula 5 - estrutura e organização da informaçãoFábio Andrade
 
01 banco de dados-basico
01 banco de dados-basico01 banco de dados-basico
01 banco de dados-basicoAmadeo Santos
 
Apresentação - Estruturas de Dados
Apresentação - Estruturas de DadosApresentação - Estruturas de Dados
Apresentação - Estruturas de Dadosrodrigopinto77
 
Modulo-02-Aula-02-conteudo-de-certi.pptx
Modulo-02-Aula-02-conteudo-de-certi.pptxModulo-02-Aula-02-conteudo-de-certi.pptx
Modulo-02-Aula-02-conteudo-de-certi.pptxAugustoNicolau2
 
Sistemas de Informações - Aula 05: Banco de Dados e Redes
Sistemas de Informações - Aula 05: Banco de Dados e RedesSistemas de Informações - Aula 05: Banco de Dados e Redes
Sistemas de Informações - Aula 05: Banco de Dados e RedesMarcus Araújo
 
Sistema de Base de Dados1.ppt
Sistema de Base de Dados1.pptSistema de Base de Dados1.ppt
Sistema de Base de Dados1.ppthhuu6
 
Curso básico de Algoritmos com Python
Curso básico de Algoritmos com PythonCurso básico de Algoritmos com Python
Curso básico de Algoritmos com PythonGiancarlo Silva
 
Algoritmo e Estrutura de dados em C - Aula 01 - 2019
Algoritmo e Estrutura de dados em C - Aula 01 - 2019Algoritmo e Estrutura de dados em C - Aula 01 - 2019
Algoritmo e Estrutura de dados em C - Aula 01 - 2019Eduardo S. Pereira
 
Tema 5 -_as_-_modelacao_do_fluxo_de_dados_-_dc_dfd_2009
Tema 5 -_as_-_modelacao_do_fluxo_de_dados_-_dc_dfd_2009Tema 5 -_as_-_modelacao_do_fluxo_de_dados_-_dc_dfd_2009
Tema 5 -_as_-_modelacao_do_fluxo_de_dados_-_dc_dfd_2009Pedro A. Uamusse
 
Projeto de Sistemas - Aula004
Projeto de Sistemas - Aula004Projeto de Sistemas - Aula004
Projeto de Sistemas - Aula004Cláudio Amaral
 
(ED1) Tópico 01 - Conceitos Básicos
(ED1) Tópico 01 - Conceitos Básicos(ED1) Tópico 01 - Conceitos Básicos
(ED1) Tópico 01 - Conceitos BásicosFabricio Narcizo
 
Exercícios banco de dados 2
Exercícios banco de dados 2Exercícios banco de dados 2
Exercícios banco de dados 2letscalco
 

Similar a Estruturas de Dados: Vetores, Pilhas e Listas (20)

Isc aula 5 - estrutura e organização da informação
Isc   aula 5 - estrutura e organização da informaçãoIsc   aula 5 - estrutura e organização da informação
Isc aula 5 - estrutura e organização da informação
 
01 banco de dados-basico
01 banco de dados-basico01 banco de dados-basico
01 banco de dados-basico
 
Apresentação - Estruturas de Dados
Apresentação - Estruturas de DadosApresentação - Estruturas de Dados
Apresentação - Estruturas de Dados
 
Modulo-02-Aula-02-conteudo-de-certi.pptx
Modulo-02-Aula-02-conteudo-de-certi.pptxModulo-02-Aula-02-conteudo-de-certi.pptx
Modulo-02-Aula-02-conteudo-de-certi.pptx
 
Sql - introdução
Sql -  introduçãoSql -  introdução
Sql - introdução
 
ADO.NET
ADO.NETADO.NET
ADO.NET
 
Introdução BD
Introdução BDIntrodução BD
Introdução BD
 
Sistemas de Informações - Aula 05: Banco de Dados e Redes
Sistemas de Informações - Aula 05: Banco de Dados e RedesSistemas de Informações - Aula 05: Banco de Dados e Redes
Sistemas de Informações - Aula 05: Banco de Dados e Redes
 
Modelagem de dados
Modelagem de dadosModelagem de dados
Modelagem de dados
 
Sistema de Base de Dados1.ppt
Sistema de Base de Dados1.pptSistema de Base de Dados1.ppt
Sistema de Base de Dados1.ppt
 
Curso básico de Algoritmos com Python
Curso básico de Algoritmos com PythonCurso básico de Algoritmos com Python
Curso básico de Algoritmos com Python
 
Aula 01 Revisão
Aula 01   RevisãoAula 01   Revisão
Aula 01 Revisão
 
Algoritmo e Estrutura de dados em C - Aula 01 - 2019
Algoritmo e Estrutura de dados em C - Aula 01 - 2019Algoritmo e Estrutura de dados em C - Aula 01 - 2019
Algoritmo e Estrutura de dados em C - Aula 01 - 2019
 
AulaAula1(introducao)
AulaAula1(introducao)AulaAula1(introducao)
AulaAula1(introducao)
 
Aprendendo R
Aprendendo RAprendendo R
Aprendendo R
 
Tema 5 -_as_-_modelacao_do_fluxo_de_dados_-_dc_dfd_2009
Tema 5 -_as_-_modelacao_do_fluxo_de_dados_-_dc_dfd_2009Tema 5 -_as_-_modelacao_do_fluxo_de_dados_-_dc_dfd_2009
Tema 5 -_as_-_modelacao_do_fluxo_de_dados_-_dc_dfd_2009
 
Data WareHOuse
Data WareHOuseData WareHOuse
Data WareHOuse
 
Projeto de Sistemas - Aula004
Projeto de Sistemas - Aula004Projeto de Sistemas - Aula004
Projeto de Sistemas - Aula004
 
(ED1) Tópico 01 - Conceitos Básicos
(ED1) Tópico 01 - Conceitos Básicos(ED1) Tópico 01 - Conceitos Básicos
(ED1) Tópico 01 - Conceitos Básicos
 
Exercícios banco de dados 2
Exercícios banco de dados 2Exercícios banco de dados 2
Exercícios banco de dados 2
 

Más de Fabrício Lopes Sanchez

QCon 2016 - Como migramos uma solução de 4 milhões de usuários para o Azure
QCon 2016 - Como migramos uma solução de 4 milhões de usuários para o AzureQCon 2016 - Como migramos uma solução de 4 milhões de usuários para o Azure
QCon 2016 - Como migramos uma solução de 4 milhões de usuários para o AzureFabrício Lopes Sanchez
 
Construindo aplicações leves e performáticas com ASP.NET Core 1.0
Construindo aplicações leves e performáticas com ASP.NET Core 1.0Construindo aplicações leves e performáticas com ASP.NET Core 1.0
Construindo aplicações leves e performáticas com ASP.NET Core 1.0Fabrício Lopes Sanchez
 
Por que Cloud Services é o melhor dos mundos?
Por que Cloud Services é o melhor dos mundos? Por que Cloud Services é o melhor dos mundos?
Por que Cloud Services é o melhor dos mundos? Fabrício Lopes Sanchez
 
Windows Azure: computação em nuvem no melhor estilo self-service
Windows Azure: computação em nuvem no melhor estilo self-serviceWindows Azure: computação em nuvem no melhor estilo self-service
Windows Azure: computação em nuvem no melhor estilo self-serviceFabrício Lopes Sanchez
 
Desenvolvimento de aplicações para Windows Azure
Desenvolvimento de aplicações para Windows AzureDesenvolvimento de aplicações para Windows Azure
Desenvolvimento de aplicações para Windows AzureFabrício Lopes Sanchez
 
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...Fabrício Lopes Sanchez
 
Interop Day 2011 - Construindo aplicações web com WebMatrix
Interop Day 2011 - Construindo aplicações web com WebMatrixInterop Day 2011 - Construindo aplicações web com WebMatrix
Interop Day 2011 - Construindo aplicações web com WebMatrixFabrício Lopes Sanchez
 
QS24 - REST e SOAP com Razor e WebMatrix
QS24 - REST e SOAP com Razor e WebMatrixQS24 - REST e SOAP com Razor e WebMatrix
QS24 - REST e SOAP com Razor e WebMatrixFabrício Lopes Sanchez
 
Conhecendo o NuGet e utilizando com ASP.NET MVC
Conhecendo o NuGet e utilizando com ASP.NET MVCConhecendo o NuGet e utilizando com ASP.NET MVC
Conhecendo o NuGet e utilizando com ASP.NET MVCFabrício Lopes Sanchez
 

Más de Fabrício Lopes Sanchez (20)

Azure Lab Services
Azure Lab ServicesAzure Lab Services
Azure Lab Services
 
Projetando aplicações para a nuvem
Projetando aplicações para a nuvemProjetando aplicações para a nuvem
Projetando aplicações para a nuvem
 
Microserviços na vida real
Microserviços na vida realMicroserviços na vida real
Microserviços na vida real
 
QCon 2016 - Como migramos uma solução de 4 milhões de usuários para o Azure
QCon 2016 - Como migramos uma solução de 4 milhões de usuários para o AzureQCon 2016 - Como migramos uma solução de 4 milhões de usuários para o Azure
QCon 2016 - Como migramos uma solução de 4 milhões de usuários para o Azure
 
Soluções de IoT no Microsoft Azure
Soluções de IoT no Microsoft AzureSoluções de IoT no Microsoft Azure
Soluções de IoT no Microsoft Azure
 
Construindo aplicações leves e performáticas com ASP.NET Core 1.0
Construindo aplicações leves e performáticas com ASP.NET Core 1.0Construindo aplicações leves e performáticas com ASP.NET Core 1.0
Construindo aplicações leves e performáticas com ASP.NET Core 1.0
 
Docker para devs .NET
Docker para devs .NETDocker para devs .NET
Docker para devs .NET
 
ASP.NET 5, MVC 6 e além
ASP.NET 5, MVC 6 e alémASP.NET 5, MVC 6 e além
ASP.NET 5, MVC 6 e além
 
Por que Cloud Services é o melhor dos mundos?
Por que Cloud Services é o melhor dos mundos? Por que Cloud Services é o melhor dos mundos?
Por que Cloud Services é o melhor dos mundos?
 
O Futuro do ASP.NET (vNext)
O Futuro do ASP.NET (vNext)O Futuro do ASP.NET (vNext)
O Futuro do ASP.NET (vNext)
 
A Nova Web
A Nova WebA Nova Web
A Nova Web
 
Windows Azure: computação em nuvem no melhor estilo self-service
Windows Azure: computação em nuvem no melhor estilo self-serviceWindows Azure: computação em nuvem no melhor estilo self-service
Windows Azure: computação em nuvem no melhor estilo self-service
 
SSI 2012 - Computação em Nuvem
SSI 2012 - Computação em NuvemSSI 2012 - Computação em Nuvem
SSI 2012 - Computação em Nuvem
 
Desenvolvimento de aplicações para Windows Azure
Desenvolvimento de aplicações para Windows AzureDesenvolvimento de aplicações para Windows Azure
Desenvolvimento de aplicações para Windows Azure
 
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
Construindo aplicações robustas com a suíte de tecnologias gratuítas da Micro...
 
Web Dev Camp
Web Dev CampWeb Dev Camp
Web Dev Camp
 
Interop Day 2011 - Construindo aplicações web com WebMatrix
Interop Day 2011 - Construindo aplicações web com WebMatrixInterop Day 2011 - Construindo aplicações web com WebMatrix
Interop Day 2011 - Construindo aplicações web com WebMatrix
 
QS24 - REST e SOAP com Razor e WebMatrix
QS24 - REST e SOAP com Razor e WebMatrixQS24 - REST e SOAP com Razor e WebMatrix
QS24 - REST e SOAP com Razor e WebMatrix
 
Conhecendo o NuGet e utilizando com ASP.NET MVC
Conhecendo o NuGet e utilizando com ASP.NET MVCConhecendo o NuGet e utilizando com ASP.NET MVC
Conhecendo o NuGet e utilizando com ASP.NET MVC
 
Web em grande estilo com CSS 3
Web em grande estilo com CSS 3Web em grande estilo com CSS 3
Web em grande estilo com CSS 3
 

Estruturas de Dados: Vetores, Pilhas e Listas

  • 1. Estruturas de Dados Prof. Ms. Fabricio Lopes Sanchez
  • 2. Tópicos • Estrutura de dados? O que é? • Principais estruturas de dados – Vetores (arrays) – Pilha – Listas – Filas – Outras estruturas • Onde pilhas são utilizadas?
  • 3. Estrutura de dados: o que é? “Estrutura de dados é o ramo da computação que estuda os diversos mecanismos de organização de dados para atender aos diferentes requisitos de processamento.” Vamos detalhar essa informação?
  • 4. Estrutura de dados: o que é? Módulo 1 Módulo 2 Módulo 3 Programa de computador Módulo 4 Módulo 5 Módulo 6
  • 5. Estrutura de dados: o que é? Uma estrutura de dados pode ser dividida em dois pilares fundamentais: dado e estrutura Dado Estrutura Elemento que possui Elemento estrutural que valor agregado e que responsável por carregar pode ser utilizado para as informações dentro de solucionar problemas uma estrutura de computacionais. Os dados software. possuem tipos específicos.
  • 6. Estrutura de dados: o que é? Uma estrutura de dados pode ser dividida em dois pilares fundamentais: dado e estrutura Dado Estrutura Tipos de dados: Estruturas: - Inteiro (int) - Vetores - Texto (string) multidimensionais - Caracter (char) - Pilhas - Ponto flutuante (float) - Filas - Ponto flutuante - Listas (double)
  • 7. Principais tipos de estruturas de dados Vetores (unidimensionais e bidimensionais) É uma das estruturas de dados mais simples e mais utilizadas dentre todas. Principais características: – Adição e pesquisa de novos elementos de forma aleatória – Acesso aos elementos através de índices – Possuem tamanho finito de elementos – Carregam dados de tipos específicos – Indexação com início em 0 (zero) – Unidimensionais: apenas linha – Bidimensionais: linhas e colunas (formato de matriz)
  • 8. Principais tipos de estruturas de dados Vetores unidimensionais (int vetor[8];) vetor 10 2 5 27 34 789 33 0 0 1 2 3 4 5 6 7 • vetor[0] = 10; • vetor[4] = 34; • vetor[1] = 2; • vetor[5] = 789; • vetor[2] = 5; • vetor[6] = 33; • vetor[3] = 27; • vetor[7] = 0;
  • 9. Principais tipos de estruturas de dados Vetores bidimensionais (int vetorb[2][2];) 0 1 • vetorb[0][0] = 10; • vetorb[0][1] = 2; 0 10 2 • vetorb[1][0] = 34; vetorb • vetorb[1][1] = 50; 1 34 50
  • 10. Principais tipos de estruturas de dados Pilha É uma estrutura de dados amplamente utilizada e que implementa a ideia de pilha de elementos: – LIFO (Last-In-First-Out) – Permite a adição e remoção de elementos – O elemento a ser removido é sempre aquele mais novo – Simula a ideia de pilhas de elementos – Para que o acesso a um elemento da pilha ocorra, os demais acima devem ser removidos
  • 11. Principais tipos de estruturas de dados • Pilha NovaPilha = new Pilha(); • NovaPilha.Add(2); • NovaPilha.Add(3); • NovaPilha.Add(6); • NovaPilha.Remove(3); 6 3 2
  • 12. Principais tipos de estruturas de dados Lista É uma estrutura de dados amplamente utilizada e que implementa a ideia de lista de elementos: – FIFO (First-In-First-Out) – Permite a adição e remoção de elementos – O elemento a ser removido é sempre o primeiro a entrar – As operações de entrada e saída sempre ocorrem nas extremidades
  • 13. Principais tipos de estruturas de dados • Lista NovaLista = new Lista(); • NovaLista.Add(2); • NovaLista.Add(3); • NovaLista.Add(6); • NovaLista.Add(12); 12 6 3 2
  • 14. Outras estruturas • Árvores • Árvores binárias • Pilhas, listas e filas dinâmicas e encadeadas • Grafo • Tabela Hashing • Etc.
  • 15. Aplicações • Estruturas de dados são muito utilizadas em aplicações de nível mais baixo, tais como: – Implementação de estruturas de bancos de dados – Compiladores e interpretadores – Editores de texto – Kernel de sistemas operacionais – Etc.