You are on page 1of 6

PONTIFICIA

UNIVERSIDAD CATOLICA DE VALPARAISO

Escuela de Ingeniera Informtica

Estructura de Datos
ICI - 241

Desarrollado por
Ricardo Soto De Giorgis

Escuela de Ingeniera
Informtica

PONTIFICIA
UNIVERSIDAD CATOLICA DE VALPARAISO

Escuela de Ingeniera Informtica

Captulo 1 - Estructuras Estticas


1.1 - Introduccin
Un estructura de datos es una coleccin de datos que pueden ser
caracterizados por su organizacin y las operaciones que se definen en ellas.
Las estructuras de datos se utilizan,
generalmente, para procesar una coleccin
de valores que estn relacionados entre s
por algn mtodo.

Por ejemplo: una lista de notas, una


serie de puntajes de un concurso o
una lista de temperaturas medidas a
lo largo de un perodo de tiempo.

Las estructuras de datos bsicas que soportan la mayora de los lenguajes de


programacin son los estructuras estticas.

Desarrollado por
Ricardo Soto De Giorgis

Escuela de Ingeniera
Informtica

ICI 241 Estructura de Datos

PONTIFICIA
UNIVERSIDAD CATOLICA DE VALPARAISO

Escuela de Ingeniera Informtica

Captulo 1 - Estructuras Estticas


1.2 Estructuras estticas
Una estructura de datos esttica es aquella en la que el tamao ocupado en
memoria se define antes de que el programa se ejecute y no puede modificarse
dicho tamao durante la ejecucin del programa.
Entre las estructuras de datos estticas se encuentran los arrays (vectores y
matrices), registros, archivos y cadenas.

1.2.1 Arrays unidimensionales (Vectores)


Un array es un conjunto finito y ordenado de elementos homogneos
Cada elemento puede ser identificado

Son del mismo tipo de datos

El array unidimensional o vector es el tipo de array ms simple.


notas[0] notas[1]

notas[2] notas[3] ............................

notas[n]

Subndice designa la posicin del elemento


en el vector
Desarrollado por
Ricardo Soto De Giorgis

Escuela de Ingeniera
Informtica

ICI 241 Estructura de Datos

PONTIFICIA
UNIVERSIDAD CATOLICA DE VALPARAISO

Escuela de Ingeniera Informtica

Captulo 1 - Estructuras Estticas


1.2.1 Arrays unidimensionales (Vectores)
Las operaciones que se pueden realizar con vectores son: asignacin, lectura,
escritura, recorrido, actualizacin(aadir, borrar, insertar), ordenacin, bsqueda .
La notacin algortmica que utilizaremos es la siguiente:
Array [dimensiones] de <tipo de dato> : <nombre del array>
Array[0..100] de entero : numero

int numero[100];

Asignacin:
<nombre del array> [subindice] <- <valor>
numero[0] <- 5

numero[0] = 5;

desde i = 1 hasta 5 hacer

For (i=1; i<=5; i++){

numero[i] <- 8
fin_desde

Desarrollado por
Ricardo Soto De Giorgis

numero[i]=8;
}

Escuela de Ingeniera
Informtica

ICI 241 Estructura de Datos

PONTIFICIA
UNIVERSIDAD CATOLICA DE VALPARAISO

Escuela de Ingeniera Informtica

Captulo 1 - Estructuras Estticas


1.2.1 Arrays unidimensionales (Vectores)
Lectura:
leer (<nombre del array>[subindice])
leer (numero[0])
scanf(%d, &numero[0]);

Escritura:
escribir (<nombre del array>)[subindice])
escribir (el nmero es: numero[0]);
printf (el nmero es: %d, numero[0]);

Desarrollado por
Ricardo Soto De Giorgis

Escuela de Ingeniera
Informtica

PONTIFICIA
UNIVERSIDAD CATOLICA DE VALPARAISO

ICI 241 Estructura de Datos

Escuela de Ingeniera Informtica

Captulo 1 - Estructuras Estticas


1.2.1 Arrays unidimensionales (Vectores)
Insercin:
/* Se desea insertar nuevo_elemento en la posicin p */
/* i corresponde al ndice del ltimo elemento*/
mientras (i >= p) hacer
autos[i+1]<-autos[i]
i <- i-1
fin_mientras
autos[p]<- nuevo_elemento
while (i >= p){
autos[i+1]=autos[i];
i=i--;
}
autos[p]= nuevo_elemento;

Desarrollado por
Ricardo Soto De Giorgis

Escuela de Ingeniera
Informtica

ICI 241 Estructura de Datos

PONTIFICIA
UNIVERSIDAD CATOLICA DE VALPARAISO

Escuela de Ingeniera Informtica

Captulo 1 - Estructuras Estticas


1.2.1 Arrays unidimensionales (Vectores)
eliminar:
/* Se desea eliminar elemento en la posicin j */
/* n corresponde al ndice del ltimo elemento*/
desde (i <- j) hasta n-1 hacer
autos[i]<-autos[i+1]
fin_desde
for (i = j;i<=n-1;i++){
autos[i]=autos[i+1];
}

Desarrollado por
Ricardo Soto De Giorgis

Escuela de Ingeniera
Informtica

ICI 241 Estructura de Datos

PONTIFICIA
UNIVERSIDAD CATOLICA DE VALPARAISO

Escuela de Ingeniera Informtica

Captulo 1 - Estructuras Estticas


1.2.2 Arrays bidimensionales(Matrices)
Un array bidimensional se puede considerar como un vector de vectores. Es
por consiguiente un conjunto de elementos homogneos y ordenados en el que
se necesita especificar dos subndices para poder identificar cada elemento del
array.

Fila 1

notas[0,0] notas[0,1]

..............

notas[1,0] notas[1,1]

............

notas[1,j]

notas[2,0] notas[2,1]

.............

notas[2,j]

Fila 2

notas[0,j]

.............
.............
notas[i,0] notas[i,1]

..............

notas[i,j]

Fila i

Columna 1
Desarrollado por
Ricardo Soto De Giorgis

Columna 2
Escuela de Ingeniera
Informtica

Columna j
ICI 241 Estructura de Datos

PONTIFICIA
UNIVERSIDAD CATOLICA DE VALPARAISO

Escuela de Ingeniera Informtica

Captulo 1 - Estructuras Estticas


1.2.2 Arrays bidimensionales(Matrices)
Las operaciones que se pueden realizar con matrices son: asignacin, lectura,
escritura, recorrido, actualizacin(aadir, borrar, insertar), ordenacin, bsqueda.
La notacin algortmica que utilizaremos es la siguiente:
Array[dimension fila, dimension columna] de <tipo de dato>:<nombre del array>
Array[0..100,0..50] de entero:numero

int numero[100][50];

Asignacin:
<nombre del array> [subindice fila,subindice columna] <- <valor>
numero[0,0] <- 5

numero[0][0] = 5;

desde i = 1 hasta 5 hacer

For (i=1; i<=5; i++){

desde j = 1 hasta 5 hacer

For (j=1; j<=5; j++){

numero[i,j] <- 8

numero[i][j]=8;

fin_desde

fin_desde

Desarrollado por
Ricardo Soto De Giorgis

Escuela de Ingeniera
Informtica

PONTIFICIA
UNIVERSIDAD CATOLICA DE VALPARAISO

ICI 241 Estructura de Datos

Escuela de Ingeniera Informtica

Captulo 1 - Estructuras Estticas


1.2.2 Arrays bidimensionales(Matrices)
Lectura:
leer (<nombre del array>[subindice fila, subindice columna])
leer (numero[0,0])
scanf(%d, &numero[0][0]);

Escritura:
escribir (<nombre del array>)[subindice fila, subindice columna])
escribir (el nmero es: numero[0,0]);
printf (el nmero es: %d, numero[0][0]);

Desarrollado por
Ricardo Soto De Giorgis

Escuela de Ingeniera
Informtica

ICI 241 Estructura de Datos

PONTIFICIA
UNIVERSIDAD CATOLICA DE VALPARAISO

Escuela de Ingeniera Informtica

Captulo 1 - Estructuras Estticas


1.2.3 Arrays multidimensionales

Curso

Un array puede ser definido de tres dimensiones, cuatro dimensiones, hasta de


n-dimensiones. En general, un array de n-dimensiones requiere que los valores
de los n-subndices puedan ser especificados a fin de identificar un elemento
individual del array.

ra
re
ar
C

Sexo

Desarrollado por
Ricardo Soto De Giorgis

Escuela de Ingeniera
Informtica

ICI 241 Estructura de Datos

PONTIFICIA
UNIVERSIDAD CATOLICA DE VALPARAISO

Escuela de Ingeniera Informtica

Captulo 1 - Estructuras Estticas


1.2.3 Arrays multidimensionales
Las operaciones que se pueden realizar con matrices son: asignacin, lectura,
escritura, recorrido, actualizacin(aadir, borrar, insertar), ordenacin, bsqueda.
La notacin algortmica que utilizaremos es la siguiente:
Array[dimension i, dimension j,... dimension n] de <tipo de dato>:<nombre del
array>
Array[0..100,0..50,0...20] de entero:numero

int numero[100][50][20];

Lectura:
leer (<nombre del array>[subindice i, subindice j,... subindice n])
leer (numero[0,0,0])
scanf(%d, &numero[0][0][0]);

Desarrollado por
Ricardo Soto De Giorgis

Escuela de Ingeniera
Informtica

ICI 241 Estructura de Datos

You might also like