Sei sulla pagina 1di 22

Unidad 2 – Estructura de datos

TEMAS
•ARREGLOS (unidimensionales, bidimensionales
y multidimensionales)
•PILAS
•ELEMENTOS
•OPERACIONES
•TIPOS DE IMPLEMENTACION DE
PILAS
•COLAS
•TIPOS DE COLAS
(SIMPLES,CIRCULARES Y BICOLAS)

¿Que es un arreglo?

Un arreglo es una colección de posiciones de almacenamiento de datos, donde cada una tiene el mismo tipo de dato y el mismo nombre. (las
variables son como carpetas individuales, y un arreglo es como una sola carpeta con muchos compartimientos).

Los arreglos se representan en memoria de la forma siguiente:                  x : array[1..5] of integer Para establecer el rango del arreglo

(número total de elementos) que componen el arreglo se utiliza la siguiente formula:

                RANGO = Ls - (Li+1)donde: ls = Límite superior del arreglo


li = Límite inferior del arreglo


Para calcular la dirección de memoria de un elemento dentro de un arreglo se usa la siguiente formula:

                A[i] = base(A) + [(i-li) * w]donde : A = Identificador único del arreglo


i = Indice del elemento


li = Límite inferior

w = Número de bytes tipo componente


Si el arreglo en el cual estamos trabajando tiene un índice numerativo utilizaremos las siguientes fórmulas:

                RANGO = ord (ls) - (ord (li)+1)                A[i] = base (A) + [ord (i) - ord (li) * w]

• Un arreglo unidimensional es un arreglo que tiene solamente un subíndice.
Un subíndice es un numero encerrado entre corchetes a continuación del
nombre del arreglo.

• Los elementos de arreglos individuales del arreglo son guardados en


posiciones consecutivas de memoria.

• Cuando se declara un arreglo, el compilador reserva un espacio de


memoria lo suficientemente grande para guardar el arreglo completo.
• Un arreglo bidimensional tiene dos subíndices, al igual que en arreglos
unidimensionales, se debe usar un esquema de numeración de los elementos; en
un arreglo de n elementos los subíndices permitidos van de 0 a n-1. Si se usa un
valor de subíndice n se puede tener errores en el programa.

• Los arreglos bidimensionales se usan para representar datos que pueden verse
como una tabla con filas y columnas.

• La primera dimensión del arreglo representa las columnas, cada elemento contiene
un valor y cada dimensión representa una relación
 Un arreglo multidimensional tiene mas de un subíndice, un
arreglo bidimensional tiene dos subíndices, Un arreglo
tridimensional tiene 3 subíndices, y asi sucesivamente; no hay
limite.

 Ejemplo: Un juego de damas. El arreglo tiene 64 elementos :


cuadro [0] [0], cuadro [0] [1], cuadro [0] [2], cuadro [7] [6]
cuadro [7] [7] ... No hay un fin de elementos de un arreglo.
PILAS DEFINICION

Una pila es una lista de elementos en la


que se pueden insertar y eliminar
elementos sólo por uno de los extremos.
son otro tipo de estructura de datos
lineales, las cuales presentan restricciones
en cuanto a la posición en la cual pueden
realizarse las inserciones y las extracciones
de elementos.
ELEMENTOS

1.arreglo de datos
2.El numero máximo
3.El numero mínimo
4.El tipo de datos de la pila
5.los índices Tope y Base de
la Pila
OPERACIONES CON PILAS

Operaciones Operaciones
Elementales primitivas

1.Iniciar 1.Crear()
2.Insertar 2.Destruir(P)
3.Eliminar 3.Tope(P)
4.Axiomas 4.Pop(P)
5.Pushx,P)
6.Vacía(P)
IMPLEMENTACION DE PILAS

•IMPLEMENTACIÓN MATRICIAL DE LAS PILAS.


Para la implementación basada en
matrices de pilas definimos el tipo de
dato abstracto Pila por :
typedef int tElemento /* Por
ejemplo */
typedef struct {
tElemento *elementos;
int Lmax;
int tope;
} tipoPila;
typedef tipoPila *pila;
IMPLEMENTACIÓN DE LAS PILAS
MEDIANTE CELDAS ENLAZADAS.
COLAS DEFINICIÓN

Es una estructura de datos,


caracterizada por ser una secuencia
de elementos en la que la operación
de inserción push se realiza por un
extremo y la operación de extracción
pop por el otro.

También se le llama estructura FIFO


(del inglés First In First Out), debido
a que el primer elemento en entrar
será también el primero en salir.
COLAS SIMPLES

Una cola es una estructura de datos,


caracterizada por ser una secuencia
de elementos en la que la operación
de inserción push se realiza por un
extremo y la operación de
extracción pop por el otro.
También se le llama estructura (del
inglés First In First Out), debido a
que el primer elemento en entrar
será también el primero en salir.
COLAS CIRCULARES O ANILLOS

Es una estructura de datos en la


que los elementos están de forma
circular y cada elemento tiene un
sucesor y un predecesor. Los
elementos pueden consultarse,
añadirse y eliminarse únicamente
desde la cabeza del anillo que es
una posición distinguida.
COLAS DOBLES (BICOLAS)

Es una generalización de una estructura


de cola simple.
En una cola doble, los elementos
pueden ser insertados o eliminados por
cualquiera de los extremos. Es decir, se
pueden insertar y eliminar valores tanto
por el frente como por el final de la
cola.
OPERACIONES CON COLAS

Insertar: meter dato en la cola


Eliminar: sacar dato de la cola.
EJEMPLO

•Void insertar (objet x)


-Insertar un nuevo elemento en la cola.
•Objet extraer()
-Devuelve y borra el elemento mas antiguio
de la cola.
•Objet verPrimero()
-Devuelve el elemento mas antiguo de la cola
•Bolean esta vacia()
-Comprueba si la cola esta vacia
•Viod vaciar()
-Vacia la cola.
 CERVANTES RUBIO ALEJANDRO
 SANCHEZ RAMIREZ RENE

 HERNANDEZ VIVEROS LETICIA

 JURADO HERNANDEZ CARLOS

 GAMEZ TREJO ABRAHAM JABTE

 CONTRERAS SANCHEZ MIGUEL ANGEL

 NEGRETE QUEZADA EDUARDO

Potrebbero piacerti anche