Está en la página 1de 20

CARRERA DE INGENIERA DE SISTEMAS

SEMESTRE ACADMICO 2011- II



Agosto 2010
METODOLOGA DE LA
PROGRAMACIN
SESIN 7
INTRODUCCIN A LA
ESTRUCTURA DE DATOS
ING. MANUEL GUTIRREZ AGUIRRE
CARRERA DE INGENIERA DE SISTEMAS
ESQUEMA DE CONTENIDOS
a) Introduccin a las Estructuras de Datos.

b) Tipo Abstracto de Datos.

c) Manipulacin de Memoria de los
arreglos unidimensionales
CARRERA DE INGENIERA DE SISTEMAS
DATOS
El dato es una representacin simblica (numrica, alfabtica, algortmica etc.), un atributo o una
caracterstica de una entidad. Los datos son hechos que describen sucesos y entidades. No tienen
ninguna informacin. Puede significar un numero, una letra, o cualquier smbolo que representa
una palabra, una cantidad, una medida o una descripcin.

El dato no tiene valor semntico (sentido) en s mismo, pero si recibe un tratamiento
(procesamiento) apropiado, se puede utilizar en la realizacin de clculos o toma de decisiones. Es
de empleo muy comn en el mbito informtico y, en general, prcticamente en cualquier disciplina
cientfica.

En programacin, un dato es la expresin general que describe las caractersticas de las
entidades sobre las cuales opera un algoritmo.

En Estructura de datos, es la parte mnima de la informacin.
CARRERA DE INGENIERA DE SISTEMAS
EJEMPLO DE DATOS
Fecha de Nacimiento.
Nombre
Apellido Materno
Color de Ojos
Nota del Examen Parcial
Talla
Nombre del Producto
Precio del Producto
Longitud del Lado de un Cuadrado
Forma de la Pizarra
Nombre del Curso
Entre otros muchos mas
CARRERA DE INGENIERA DE SISTEMAS
INFORMACIN
En sentido general, la informacin es un conjunto organizado de datos procesados, que
constituyen un mensaje que cambia el estado de conocimiento del sujeto o sistema que recibe
dicho mensaje.

Desde el punto de vista de la ciencia de la computacin, la informacin es un conocimiento
explcito extrado por seres vivos o sistemas expertos como resultado de interaccin con el
entorno o percepciones sensibles del mismo entorno. En principio la informacin, a diferencia
de los datos, tienen estructura til que modificar las sucesivas interacciones del ente que
posee dicha informacin con su entorno.
CARRERA DE INGENIERA DE SISTEMAS
ESTRUCTURAS DE DATOS
En programacin, una estructura de datos es una forma de organizar un conjunto de
datos elementales con el objetivo de facilitar su manipulacin. Un dato elemental es la
mnima informacin que se tiene en un sistema.

Una estructura de datos define la organizacin e interrelacin de stos y un conjunto de
operaciones que se pueden realizar sobre ellos. Las operaciones bsicas son:

a) Alta, adicionar un nuevo valor a la estructura.
b) Baja, borrar un valor de la estructura.
c) Bsqueda, encontrar un determinado valor en la estructura para realizar una
operacin con este valor, en forma secuencial o binario (siempre y cuando los
datos estn ordenados).
CARRERA DE INGENIERA DE SISTEMAS
ESTRUCTURAS DE DATOS
Otras operaciones que se pueden realizar son:

a) Ordenamiento, de los elementos pertenecientes a la estructura.
b) Unin, dadas dos estructuras originar una nueva ordenada y que contenga a las
unidas.

Existen diversas estructuras de datos y cada una de ellas ofrece ventajas y desventajas
en relacin a la simplicidad y eficiencia para la realizacin de cada operacin.

De esta forma, la eleccin de la estructura de datos apropiada para cada problema
depende de factores como la frecuencia y el orden en que se realiza cada operacin
sobre los datos.
CARRERA DE INGENIERA DE SISTEMAS
TIPOS DE ESTRUCTURA DE DATOS
Entre los principales clases de estructuras de datos tenemos las siguientes:

1) Vectores (matriz o arreglo)
2) Registros
3) Listas (List)
4) Pilas (Stack)
5) Colas (Queue)
6) rboles
7) Grafos
8) Tablas Hash
CARRERA DE INGENIERA DE SISTEMAS
CATEGORIAS DE ESTRUCTURAS DE
DATOS
a) ESTTICAS. Son aquellas en las que el tamao ocupado en la memoria se define
antes de que el programa se ejecute y no puede modificarse durante la corrida.



b) DINAMICAS. No tienen las limitaciones y restricciones en el tamao de memoria
que son propias de las estructuras estticas. Mediante el uso de un tipo de datos
especfico, denominado puntero, es posible construir estructuras de datos
dinmicas soportadas por la mayora de los lenguajes de programacin


Nota[3]
13 10 18
[0] [1] [2]
Nombre[] Juan Rosa 18
[0] [1] [n]
CARRERA DE INGENIERA DE SISTEMAS
TIPO DE DATOS ABSTRACTO (TDA)
El tipo de dato abstracto es un modelo matemtico compuesto por una
coleccin de operaciones definidas sobre un conjunto de datos para el
modelo.

Los Lenguajes de Programacin Orientados a Objetos son lenguajes
formados por diferentes mtodos o funciones y que son llamados en el
orden en que el programa lo requiere, o el usuario lo desea. La
abstraccin de datos consiste en ocultar las caractersticas de un objeto y
obviarlas, de manera que solamente utilizamos el nombre del objeto en
nuestro programa.


CARRERA DE INGENIERA DE SISTEMAS
TIPO DE DATOS ABSTRACTO (TDA)
DATOS

Nombre

Apellido

Fecha de
Nacimiento

Talla

Peso
MTODOS U OPERACIONES

Caminar

Correr

Saltar

Hablar

Escuchar
CARRERA DE INGENIERA DE SISTEMAS
TIPO DE DATOS ABSTRACTO (TDA)
DATOS

Lado
MTODOS U OPERACIONES

Dar Valor al Lado

Obtener el rea
DATOS

Fecha
Nacimiento
MTODOS U OPERACIONES

Obtener la Edad

Obtener el Signo Zodiacal

Dar Valor a la Edad
CARRERA DE INGENIERA DE SISTEMAS
TIPO DE DATOS ABSTRACTO (TDA)
Al hecho de guardar todas las caractersticas y
habilidades de un objeto por separado se le
llama Encapsulamiento y es tambin un
concepto importante para entender la
estructuracin de datos. Es frecuente que el
Encapsulamiento sea usado como un sinnimo
del Ocultacin de informacin.

En la terminologa de Lenguaje Orientado a
Objeto, un TDA es una clase; una instancia de
un TDA o clase, es un objeto. Adems es
utilizado constantemente por programadores
de computadoras.

CARRERA DE INGENIERA DE SISTEMAS
ARREGLO UNIDIMENSIONAL
En programacin, un vector o arreglo unidimensional (llamados en ingls arrays)
es una zona de almacenamiento continuo, que contiene una serie de elementos
del mismo tipo de datos, llamados los elementos de la matriz.

Desde el punto de vista lgico una matriz se puede ver como un conjunto de
elementos ordenados en fila (o filas y columnas si tuviera dos dimensiones).

Estas estructuras de datos son adecuadas para situaciones en las que el acceso
a los datos se realice de forma aleatoria e impredecible.
CARRERA DE INGENIERA DE SISTEMAS
ARREGLO UNIDIMENSIONAL
Todo vector se compone de un determinado nmero de elementos del mismo tipo de dato.
Cada elemento es referenciado por la posicin que ocupa dentro del vector. Dichas
posiciones son llamadas ndice y siempre son correlativos y por lo general empieza en el
elemento [0], en consecuencia, si el vector tiene 'n' componentes la ltima tendr como
ndice el valor 'n-1. :
Nota[3]
13 10 18
[0] [1] [2]
NDICE
ELEMENTO
DIMENSIN
DEL VECTOR
NOMBRE
DEL VECTOR
CARRERA DE INGENIERA DE SISTEMAS
ARREGLO UNIDIMENSIONAL
0
1
2
3
4
5
6
Juan
Pedro
Ana
Rosa
Miguel
Jos
Rita
Alumno
Ingresar datos al Vector.

Alumno[3] = Teresa
Alumno[5] = strNombreAlumno

Leer datos desde el Vector.

strNombreAlumno = Alumno[2]
CARRERA DE INGENIERA DE SISTEMAS
ARREGLO UNIDIMENSIONAL
La forma de acceder a los elementos del vector es
directa; esto significa que el elemento deseado es
obtenido a partir de su ndice y no hay que ir
buscndolo elemento por elemento (en contraposicin,
en el caso de una lista, para llegar, por ejemplo, al
tercer elemento hay que acceder a los dos anteriores o
almacenar un apuntador o puntero que permita acceder
de manera rpida a ese elemento).

Esto se realiza por medio de bucles o estructuras
repetitivas.
0
1
2
3
4
5
6
Juan
Pedro
Ana
Rosa
Miguel
Jos
Rita
Alumno
B
U
C
L
E
CARRERA DE INGENIERA DE SISTEMAS
VECTORES EN JAVA
Para declarar un arreglo unidimensional en Java se hace de la
siguiente manera:

<Tipo de dato> [<Dimensin del Vector>]<nombre de vector>;


<Tipo de dato> <nombre de vector>[<Dimensin del Vector>];


Ejemplo

int [5]Notas;


String Alumno[50];


CARRERA DE INGENIERA DE SISTEMAS
CARGAR UN VECTOR EN JAVA
Para cargar un vector o arreglo unidimensional con datos se utilizan
bucles o estructuras repetitivas.

int intNotas[5];
int intContador;

for ( intContador = 0; intContador < 5; intContador++ )
{
intNotas[intContador] = intContador * 2;
}
CARRERA DE INGENIERA DE SISTEMAS
MOSTRAR DATOS DE UN VECTOR EN JAVA
Para cargar un vector o arreglo unidimensional con datos se utilizan bucles
o estructuras repetitivas.

int intContador;

for ( intContador = 0; intContador < 5; intContador++ )
{
println(Elemento N + intContador + + intNotas[intContador];
}

También podría gustarte