Вы находитесь на странице: 1из 31

ESTRUCTURA DE DATOS

SESION 1

UNMSM FISI Gustavo


Arredondo C.
gustavoarredondo@gmail.com

Rev.

Estructura de Datos
CONTENIDO

Tipos de Estructuras
Estaticas
Dinamicas

Arreglos Unidimensionales y Bidimensionales


Lista
Lista simple
Lista doblemente enlazada
Lista circular
Listas por saltos(Skip lists)
rboles
rboles Binarios
rboles multicamino(Multirrama)
Grafos

Bibliografa

JOYANES, Luis y otros

Langsam, Yedidyah

Romn Martnez, Elda Quiroga

Jorge A. Villalobos

Osvaldo Cair y Silvia


Guardati

Luis Joyanes Aguilar


Lucas Sanchez Garcia
Ignacio Zahonero

Contenido Temtico
1. Introduccin a la metodologa de construccin de
grandes programas
2. Abstraccin de datos: tipos abstractos de datos y
objetos
3. Recursividad
4. Estructuras dinmicas de datos. Listas
5. Modificaciones de listas enlazadas
6. Pilas
7. Colas
8. rboles
9. rboles equilibrados
10. rboles B
11. Grafos, representacin y operaciones
12. Algoritmos fundamentales con grafos
13. Ordenacin interna
14. Anlisis de algoritmos
15. Archivos de datos (ficheros)
16. Ordenacin externa
17. Programacin orientada a objetos

Roman Martinez

Estructura de Datos
Contenido
Qu es una Estructura de Datos?
Es una coleccin de datos elementales
organizada de un modo particular con el
objetivo de facilitar su manipulacin.
Qu es un Dato Elemental?
Un dato elemental es la mnima
informacin que se tiene en un sistema

Abstraccion
Qu es una abstraccin?
Proceso mental que permite extraer los
rasgos mas importantes de algo que se
desea representar a travs de un lenguaje
escrito o grafico

Porqu es importante la
Abstraccin?
Permite desarrollar software reutilizable y
extensible

Clasificacin de las Estructuras de Datos.


Unaestructura de datoses una clase de datos que
se puede caracterizar por su organizacin y
operaciones definidas sobre ella.
Algunas veces a estas estructuras se les llama tipos
de datos.
En ellas encontramos las siguientes:
1. ESTRUCTURAS LGICAS DE DATOS
2. ESTRUCTURAS PRIMITIVAS Y SIMPLES
3. ESTRUCTURAS LINEALES Y NO LINEALES

Clasificacin de las Estructuras de Datos.


1.- ESTRUCTURAS LGICAS DE DATOS
En un programa, cada variable pertenece a
alguna estructura de datos explcita o
implcitamente definida, la cual determina el
conjuntode operacionesvlidas para ella.
Las estructuras de datos que se discuten aqu son
estructuras de datos lgicas. Cada estructura de
datos lgica puede tener varias representaciones
fsicas diferentes para sus almacenamientos

Clasificacin de las Estructuras de Datos.


2.- ESTRUCTURAS PRIMITIVAS Y SIMPLES:
Son primitivas aquellas que no estn
compuestas por otras estructuras de datos por
ejemplo, enteros, booleanos y caracteres. Otras
estructuras de datos se pueden construir de una
o mas primitivas. Las estructuras dedatos
simplesque consideramos se construyen a
partir de estructuras primitivas y son: cadenas,
arreglos y registros. A estas estructuras de datos
las respaldan muchos lenguajes de
programacin.

Clasificacin de las Estructuras de Datos.


3.- ESTRUCTURAS LINEALES Y NO LINEALES:
Las estructuras de datos simples se pueden
combinar de varias maneras para formar
estructuras mas complejas. Las dos cases
principales de estructuras de datosson
laslineales y las no lineales, dependiendo de la
complejidad de las relaciones lgicas que
representan. Las estructuras de datos lineales
incluyen pilas, colas y listas enlazadas. Las
estructuras de datos no lineales incluyen grafos
y rboles.

Datos, Tipos de Datos y Tipos


Abstractos de datos
Datos.- Los datos son los valores
que manejamos en la resolucin de
un problema, tanto los valores de
entrada, de proceso y los de salida.
Es decir, los datos contienen
informacin y por lo tanto
distinguimos varios tipos de datos.

Datos, Tipos de Datos y Tipos


Abstractos de datos
Tipo De Dato.- Conjunto de valores y
de operaciones definidas por esos
valores. Clasificar los datos en distintos
tipos aporta muchas ventajas, como por
ejemplo indicarle al compilador la
cantidad de memoria que debe reservar
para cada instancia dependiendo del
tipo de dato al que pertenezca.

Datos, Tipos de Datos y Tipos


Abstractos de datos
Tipos Abstractos de Datos (TDA).Extienden la funcin de un tipo de dato
ocultando la implementacin de las
operaciones definidas por el usuario.
Esta capacidad de ocultamiento nos
permite desarrollar software
reutilizable y extensible

Tipo Abstracto de Dato


(TAD)
Los tipos abstractos de datos estn
formados por los datos (estructuras de
datos) y las operaciones (procedimientos o
funciones) que se realizan sobre esos datos.
El conjunto de operaciones definidas sobre
el TAD debe ser cerrado, es decir, slo se
debe acceder a los datos mediante las
operaciones abstractas definidas sobre ellos.
La abstraccin de datos slo permite
acceder a ellos de manera controlada.

Construccin de un TAD
La consta de dos fases bien diferenciadas entre ellas:
La especificacin (formal e informal) y
La implementacin.

Las caractersticas de un TAD debe depender cmo


queremos que sea su comportamiento, lo cual llamamos
especificacin. Para la especificacin de un tipo
abstracto de datos en lenguaje natural (especificacin
informal) hemos de seguir el siguiente esquema:
TIPO DE DATOS Nombre del tipo (Lista de operaciones)
VALORES: Descripcin de los posibles valores
OPERACIONES: Descripcin de cada operacin

Tipo Abstracto de Datos


(TDA)
La tcnica de abstraccin de datos establece
que al disear una nueva estructura de datos,
esta debe pasar a ser un Tipo de Dato
Abstracto (TDA) que podr implementarse en
cualquier lenguaje y aplicarse en cualquier
concepto
Un tipo de dato abstracto (TDA) o Tipo
abstracto de datos (TAD) es un modelo
matemtico compuesto por una coleccin de
operaciones definidas sobre un conjunto de
datos para el modelo.

Caractersticas esenciales de una


estructura de datos
Cualquier coleccin de datos organizados de
tal forma que tengan asociados un conjunto
de operaciones para poder manipularlos
Cualquier lenguaje de alto nivel provee
tipos de datos estructurados o estructura de
datos predefinidas, como los arreglos
Un arreglo de un conjunto de datos, todos
del mismo tipo, organizacin lineal y
mtodos claros de acceso a travs de sus
sub ndices

Estructura de Datos
Una estructura de datos define la organizacin einterrelacinde
estos y un conjunto de operaciones que se pueden realizar sobre
ellos.
Las operaciones bsicas son:

Alta, adicionar un nuevo valor a la estructura.


Baja, borrar un valor de la estructura.
Bsqueda, encontrar un determinado valor en la estructura
para realizar una operacin con este valor, en
formasecuencialobinario(siempre y cuando los datos estn
ordenados).
Otra operacion que se puede realizar son:

Ordenamiento, de los elementos pertenecientes a la


estructura.

Tipo Abstracto de Datos


(TAD)
Un TDA es un tipo de dato definido por el
programador que se puede manipular de un
modo similar a los tipos de datos definidos
por el sistema.
Est formado por un conjunto vlido de
elementos y un nmero de operaciones
primitivas que se pueden realizar sobre ellos.
Una vez definido se podrn declarar variables
de ese tipo y operar con ellas utilizando las
operaciones que aporta el tipo.

I.2. TIPOS DE DATOS


A. Tipos de datos simples

Es uno de los conceptos fundamentales de cualquier lenguaje


de programacin. Estos definen los mtodos de
almacenamiento disponibles para representar informacin, junto
con la manera en que dicha informacin ha de ser interpretada.
Para crear una variable (de un tipo simple) en memoria debe
declararse indicando su tipo de variable y su identificador que la
identificar de forma nica. La sintaxis de declaracin de
variables es la siguiente:
TipoSimple Identificador1, Identificador2;
Esta sentencia indica al compilador que reserve memoria para
dos variables del tipo simpleTipoSimplecon
nombresIdentificador1eIdentificador2.

I.2. TIPOS DE DATOS


A. Tipos de datos simples

Los tipos de datos pueden dividirse en dos


categoras: simples y compuestos. Los
simples son tipos nucleares que no se derivan
de otros tipos, como los enteros, de coma
flotante, booleanos y de carcter. Los tipos
compuestos se basan en los tipos simples, e
incluyen las cadenas, las matrices y tanto las
clases como las interfaces, en general.
Cada tipo de datos simple soporta un conjunto
de literales que le pueden ser asignados, para
darles valor.

Cada tipo de datos simple soporta un conjunto de


literales que le pueden ser asignados, para darles valor.
En este apartado se explican los tipos de datos simples
(o primitivos) que presenta Java, as como los literales
que soporta (sintaxis de los valores que se les puede
asignar).
a.) Tipos de datos enteros
Se usan para representar nmeros enteros con signo.
Hay cuatro tipos:byte, short, int y long.
Tipo

Tamao

byte

1Byte (8 bits)

short

2 Bytes (16
bits)

int

4 Bytes (32
bits)

long

8 Bytes (64
bits)

b.) Tipos de datos en coma flotante


Se usan para representar nmeros con partes fraccionarias. Hay dos tipos de coma
flotante: float y double. El primero reserva almacenamiento para un nmero de
precisin simple de 4 bytes y el segundo lo hace para un numero de precisin doble
de 8 bytes.
Tipo

Tamao

float

4 Byte (32
bits)

double

8 Bytes (64
bits)
Representan nmeros decimales con partes fraccionarias. Pueden
representarse con notacin estndar (563,84) o cientfica (5.6384e2).

c.) Tipo de datos boolean


Se usa para almacenar variables que presenten dos estados,
que sern representados por los valorestrueyfalse.
Representan valores bi-estado, provenientes del
denominadolgebra de Boole.
Literales Booleanos
En Java se utiliza dos palabras clave para los
estados:true(para verdadero) yfalse(para falso). Este tipo
de literales en C/C++, lenguajes en los que el valor de falso se
representaba por un 0 numrico, y verdadero cualquier
nmero que no fuese el 0.
Para declarar un dato del tipo booleano se utiliza la palabra
reservadaboolean:
boolean reciboPagado = false; // Aun no nos han pagado?!

d) Tipo Caracter

Este tipo de datos se emplea para representar un carcter perteneciente a un determinado cdigo
utilizado por el ordenador (normalmente el cdigo ASCII).
Para representar este tipo de dato se antepone la palabra reservada char al identificador de la
variable.
Char identificador = valor;
Una constante tipo char se representa como un solo carcter encerrado entre comillas simples.
Por ejemplo: char letra, letra2;
char letra=a;
Tipo cadena de caracteres: una cadena de caracteres es un nmero de caracteres consecutivos
(incluso ninguno) encerrado entre unos delimitadores determinados, que en el lenguaje C son las
comillas dobles.
Para definir variables de tipo cadena, estas se definen como vectores de caracteres, esto es,
anteponiendo la palabra reservadachar al identificador de la variable, y despus entre corchetes la
longitud mxima de cadena.
Char identificador[cantidad] = mensaje ;
Por ejemplo: char cadena[20];
char cadena[20] = Hola mundo;
char cadena[] = HOLA;
Tipo
dato
Palabra
Ejemplo
En la siguiente tabla
sede
hace
un resumen de
los distintos tipos de datos:

reservada

Entero
Int
Real
Float
Carcter
Char
Cadena de carcterChar

Int numero=0;
Float numero=12.2;
Char letra = a;
Char palabra[10] =
HOLA;

Tipos de Datos

Estructura de Datos

Esttica
s

INTERNA
S

Simples o
Primitivas
Compuestas

Lineales
Dinmic
as

INTERNA
S

Base
Datos

Listas Circulares
Simples
Listas Circulares
Dobles

No
Lineales
Archivos

Listas
Simplemente
Enlazadas
Listas
Doblemente
Enlazadas

Arboles
Grafos

Вам также может понравиться

  • BD Clase 10 SQL2 PDF
    BD Clase 10 SQL2 PDF
    Документ29 страниц
    BD Clase 10 SQL2 PDF
    Anthony Raúl Muñante Chávez
    Оценок пока нет
  • Word Art Clase Primaria
    Word Art Clase Primaria
    Документ24 страницы
    Word Art Clase Primaria
    Anthony Raúl Muñante Chávez
    Оценок пока нет
  • BD Clase 12 Seguridad
    BD Clase 12 Seguridad
    Документ48 страниц
    BD Clase 12 Seguridad
    Yohel Torres
    Оценок пока нет
  • BD Clase 06 Modelo Relacional
    BD Clase 06 Modelo Relacional
    Документ36 страниц
    BD Clase 06 Modelo Relacional
    Arturo Jordan Valverde Flores
    Оценок пока нет
  • Base de Datos 2 Proyecto
    Base de Datos 2 Proyecto
    Документ2 страницы
    Base de Datos 2 Proyecto
    Anthony Raúl Muñante Chávez
    Оценок пока нет
  • Sesion 3.1 Capa Fisica
    Sesion 3.1 Capa Fisica
    Документ55 страниц
    Sesion 3.1 Capa Fisica
    Anthony Raúl Muñante Chávez
    Оценок пока нет
  • BD Clase 07 ERE Relacional PDF
    BD Clase 07 ERE Relacional PDF
    Документ47 страниц
    BD Clase 07 ERE Relacional PDF
    Jose Castro
    Оценок пока нет
  • Lenguajes y Compiladores
    Lenguajes y Compiladores
    Документ5 страниц
    Lenguajes y Compiladores
    Anthony Raúl Muñante Chávez
    Оценок пока нет
  • ED 2017-I Guia 8 Hamilton y Euler
    ED 2017-I Guia 8 Hamilton y Euler
    Документ27 страниц
    ED 2017-I Guia 8 Hamilton y Euler
    Anthony Raúl Muñante Chávez
    Оценок пока нет
  • Solucionario Arquitectura
    Solucionario Arquitectura
    Документ4 страницы
    Solucionario Arquitectura
    Anthony Raúl Muñante Chávez
    Оценок пока нет
  • Lenguajes y Compiladores
    Lenguajes y Compiladores
    Документ5 страниц
    Lenguajes y Compiladores
    Anthony Raúl Muñante Chávez
    Оценок пока нет
  • Practica Laboratorio Escenarios de Calidad
    Practica Laboratorio Escenarios de Calidad
    Документ3 страницы
    Practica Laboratorio Escenarios de Calidad
    Anthony Raúl Muñante Chávez
    Оценок пока нет
  • Diseno de Circuitos Digitales Con VHDL v1.01
    Diseno de Circuitos Digitales Con VHDL v1.01
    Документ166 страниц
    Diseno de Circuitos Digitales Con VHDL v1.01
    Rolandito Anchapuri C
    Оценок пока нет
  • JFlex
    JFlex
    Документ6 страниц
    JFlex
    Martin Cruz Otiniano
    Оценок пока нет
  • Lenguaje de Modelado Unificado - Glady Booch, Jim Rumbaugh, Ivar Jacobson
    Lenguaje de Modelado Unificado - Glady Booch, Jim Rumbaugh, Ivar Jacobson
    Документ10 страниц
    Lenguaje de Modelado Unificado - Glady Booch, Jim Rumbaugh, Ivar Jacobson
    walder07
    Оценок пока нет
  • Clase 01
    Clase 01
    Документ38 страниц
    Clase 01
    Anthony Raúl Muñante Chávez
    Оценок пока нет
  • Analisis Sintactico Descendente
    Analisis Sintactico Descendente
    Документ29 страниц
    Analisis Sintactico Descendente
    Gean Carlos Morales Castro
    Оценок пока нет
  • Metodos Numericos para Ingenieria
    Metodos Numericos para Ingenieria
    Документ69 страниц
    Metodos Numericos para Ingenieria
    jose david
    100% (10)
  • Casos de Uso
    Casos de Uso
    Документ18 страниц
    Casos de Uso
    Carlos Alberto Privitera
    Оценок пока нет
  • Diccionario
    Diccionario
    Документ16 страниц
    Diccionario
    dms12
    Оценок пока нет
  • PARKIN Cap 12 Sol
    PARKIN Cap 12 Sol
    Документ5 страниц
    PARKIN Cap 12 Sol
    Anthony Raúl Muñante Chávez
    60% (5)
  • Material Es
    Material Es
    Документ3 страницы
    Material Es
    Robert Gutierrez
    Оценок пока нет
  • Experiencia Slab of I Sica
    Experiencia Slab of I Sica
    Документ3 страницы
    Experiencia Slab of I Sica
    Anthony Raúl Muñante Chávez
    Оценок пока нет
  • TGS
    TGS
    Документ5 страниц
    TGS
    Anthony Raúl Muñante Chávez
    Оценок пока нет
  • COSMETOLOGAS
    COSMETOLOGAS
    Документ2 страницы
    COSMETOLOGAS
    Anthony Raúl Muñante Chávez
    Оценок пока нет
  • Exp 6
    Exp 6
    Документ2 страницы
    Exp 6
    Anthony Raúl Muñante Chávez
    Оценок пока нет
  • Manual de Listas Enlazadas
    Manual de Listas Enlazadas
    Документ4 страницы
    Manual de Listas Enlazadas
    Anthony Raúl Muñante Chávez
    Оценок пока нет
  • 3 Instrumentación y Ley de Ohm B
    3 Instrumentación y Ley de Ohm B
    Документ11 страниц
    3 Instrumentación y Ley de Ohm B
    Karla C Ulloa
    Оценок пока нет
  • Geometria ANALITICA
    Geometria ANALITICA
    Документ32 страницы
    Geometria ANALITICA
    Anthony Raúl Muñante Chávez
    Оценок пока нет
  • Ficha Médica 2023
    Ficha Médica 2023
    Документ1 страница
    Ficha Médica 2023
    Claudia Paz
    Оценок пока нет
  • Informe DiagnósticoRecepto R SANANDRES
    Informe DiagnósticoRecepto R SANANDRES
    Документ7 страниц
    Informe DiagnósticoRecepto R SANANDRES
    FERNNEY SANTIAGO GARCIA SALAZAR
    Оценок пока нет
  • Filosofia Pro 5 - 1ºbgu
    Filosofia Pro 5 - 1ºbgu
    Документ7 страниц
    Filosofia Pro 5 - 1ºbgu
    Luis Freire
    Оценок пока нет
  • Mapa Conceptual Actividad 1
    Mapa Conceptual Actividad 1
    Документ2 страницы
    Mapa Conceptual Actividad 1
    rene
    Оценок пока нет
  • Principio de Identidad
    Principio de Identidad
    Документ10 страниц
    Principio de Identidad
    Jeniffer Tixta Jeronimo
    Оценок пока нет
  • El Sabor de La Muerte
    El Sabor de La Muerte
    Документ2 страницы
    El Sabor de La Muerte
    Hdz Monterrey
    Оценок пока нет
  • Manual Del Usuario Analizador de Gases
    Manual Del Usuario Analizador de Gases
    Документ33 страницы
    Manual Del Usuario Analizador de Gases
    gildardo rodriguez
    Оценок пока нет
  • Guia Introduccion A La Administracion Uph
    Guia Introduccion A La Administracion Uph
    Документ3 страницы
    Guia Introduccion A La Administracion Uph
    enmanul quiñonez
    Оценок пока нет
  • Copia de Pra-For-34 Centros Educativos Mural 1
    Copia de Pra-For-34 Centros Educativos Mural 1
    Документ6 страниц
    Copia de Pra-For-34 Centros Educativos Mural 1
    Stefany Rodriguez
    Оценок пока нет
  • Manual Tecnico para Diseño SE Rurales
    Manual Tecnico para Diseño SE Rurales
    Документ169 страниц
    Manual Tecnico para Diseño SE Rurales
    Betto Mt
    Оценок пока нет
  • FARMACOCINÉTICA Part2
    FARMACOCINÉTICA Part2
    Документ6 страниц
    FARMACOCINÉTICA Part2
    Danny David
    Оценок пока нет
  • Psicoterapia y Psiquiatría
    Psicoterapia y Psiquiatría
    Документ5 страниц
    Psicoterapia y Psiquiatría
    Juan Pérez
    Оценок пока нет
  • Misión, Visión y Descripción Del Producto.
    Misión, Visión y Descripción Del Producto.
    Документ2 страницы
    Misión, Visión y Descripción Del Producto.
    Justin Martinez
    Оценок пока нет
  • Caso Justo y Bueno
    Caso Justo y Bueno
    Документ7 страниц
    Caso Justo y Bueno
    Dani Castro
    Оценок пока нет
  • Uroanálisis
    Uroanálisis
    Документ5 страниц
    Uroanálisis
    Ceja Rodríguez Melany Andrea
    Оценок пока нет
  • Qigong
    Qigong
    Документ15 страниц
    Qigong
    Rigo Suárez
    Оценок пока нет
  • METAFORA
    METAFORA
    Документ7 страниц
    METAFORA
    Jairo Valdez
    Оценок пока нет
  • Cuestionario Capítulo 22
    Cuestionario Capítulo 22
    Документ4 страницы
    Cuestionario Capítulo 22
    María Alejandra Meza Millones
    100% (2)
  • Como Salir de La Pobreza
    Como Salir de La Pobreza
    Документ7 страниц
    Como Salir de La Pobreza
    alexcoloradito7
    Оценок пока нет
  • Tercer Informe Seguimiento PAAC y Mapa de Riesgos 2021
    Tercer Informe Seguimiento PAAC y Mapa de Riesgos 2021
    Документ19 страниц
    Tercer Informe Seguimiento PAAC y Mapa de Riesgos 2021
    Alcaldia Miraflores Guaviare
    Оценок пока нет
  • CRANEOSINOSTOSIS
    CRANEOSINOSTOSIS
    Документ22 страницы
    CRANEOSINOSTOSIS
    Algert Contreras
    Оценок пока нет
  • Trabajo Tarea04.2
    Trabajo Tarea04.2
    Документ12 страниц
    Trabajo Tarea04.2
    Oscar Paul Chambi Nunez
    Оценок пока нет
  • Descripcion Reporte Por Excepcion
    Descripcion Reporte Por Excepcion
    Документ2 страницы
    Descripcion Reporte Por Excepcion
    rosasojeda
    Оценок пока нет
  • Informe PLANEFA
    Informe PLANEFA
    Документ3 страницы
    Informe PLANEFA
    Royer E Ustua
    Оценок пока нет
  • FORMATO Seg-Campo PRS 2022-2
    FORMATO Seg-Campo PRS 2022-2
    Документ5 страниц
    FORMATO Seg-Campo PRS 2022-2
    DIEGO ALEJANDRO MORALES CAYCEDO
    Оценок пока нет
  • Manuscrito Señor Manda Obreros A Tu Mies
    Manuscrito Señor Manda Obreros A Tu Mies
    Документ10 страниц
    Manuscrito Señor Manda Obreros A Tu Mies
    Ruben Tello
    Оценок пока нет
  • Historia de Modelos Atómicos
    Historia de Modelos Atómicos
    Документ7 страниц
    Historia de Modelos Atómicos
    Andrea Jezabel López González
    Оценок пока нет
  • Practica de Lab 6
    Practica de Lab 6
    Документ6 страниц
    Practica de Lab 6
    Eduardo Empresa
    Оценок пока нет
  • Personalidad Del Anticristo
    Personalidad Del Anticristo
    Документ7 страниц
    Personalidad Del Anticristo
    Julio Prozzaglio
    Оценок пока нет
  • BTC U3 Atr Ajvg
    BTC U3 Atr Ajvg
    Документ4 страницы
    BTC U3 Atr Ajvg
    Janiz Vázquez
    100% (1)