Professional Documents
Culture Documents
ARREGLOS
UNIDIMENSIONALES Y BIDIMENSIONES
Estructura de Datos ‐
Inteligencia de Negocios ‐
Patricia Uceda
Patricia Uceda
Martos pum@comunidad.upn.edu.pe 28/03/2011
Martos pum@comunidad.upn.edu.pe 28/03/2011
Arreglos (Arrays)
Arreglos (Arrays)
Facultad de Ingeniería y Arquitectura
2
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
Arreglos Unidimensionales
Arreglos Unidimensionales
Facultad de Ingeniería y Arquitectura
3
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
Arreglos Unidimensionales o Vectores Facultad de Ingeniería y Arquitectura
Ejemplo:
int x[9];
.
int y[ ]={50, 0, -12, 123};
.
int abc[50]; .
Declara un array llamado abc que puede
X[3] 123
contener
t como máximo
á i 50 elementos
l t X[2] -12
12
cada uno de tipo entero;
X[1] 0
constante,
t t ya sea escribiéndolo
ibié d l didirectamente
t t o X[0] 50
definiendo mediante la directiva define, nunca
debe ser una variable (o sea escribir int x[i];
estará mal).
4
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
Uso de los Arreglos
Uso de los Arreglos
Facultad de Ingeniería y Arquitectura
¾ Ingreso de Elementos
¾ Impresión de Elementos
¾ Búsqueda de Elementos
¾ Inserción de Elementos
¾ Modificación
M difi ió de
d Elementos
El t
¾ Eliminación de Elementos
¾ Ordenamiento de Elementos
5
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
Ingreso de Elementos
Ingreso de Elementos
Facultad de Ingeniería y Arquitectura
X[6] 12
X[ ]
X[5] 1
15
for (i=0; i<n; i++)
X[4] 10
{
X[3] 123 cout<<"Elemento "<<i<<":"<<x[i]<<endl;
X[2] -12
X[1] 0 }
X[0] 50
7
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
Búsqueda de Elementos
Búsqueda de Elementos
Facultad de Ingeniería y Arquitectura
Lo Encontré en la Posición 4
8
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
#include<iostream.h>
void IngresoArray( int, intFacultad de Ingeniería y Arquitectura
[]);
void BusquedaValor(int,
BusquedaValor(int int []);
void main(void)
{ int x[10], n;
cout<<"Ingrese
cout<< Ingrese cantidad de elementos de la lista ";; cin>>n;
IngresoArray(n,x);
BusquedaValor(n,x); }
void IngresoArray(int n, int x[])
{ for (int i=0; i<n; i++)
{ cout<<"Elemento "<<i<<":";
cin>>x[i]; [ ]; }
}
void BusquedaValor(int n, int x[])
{ int pos, valor, band=0;
cout<<"Ingrese valor a buscar "; cin>>valor;
for (int i=0; i<=n; i++)
{ if (x[i]==valor)
{ pos=i;
band=1; } }
if (band==1)
cout<<"Valor
t "V l encontrado t d en la l posicion:
i i "
"<<pos<<endl; dl
else
cout<<"Valor No encontrado : "<<endl; }
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
9
Inserción de Elementos
Inserción de Elementos
Facultad de Ingeniería y Arquitectura
I
Insertar
t en X[3],
X[3] ell valor
l 100
int X[LIM];
... ... X[7] 12
X[6] 12 X[6] 12
15
X[5] 15 X[5] 15
10
X[4] 10 X[4] 10
-123 100
X[3] 123 X[3] -123
X[2] -12 X[2] -12
for ( i=n; i>pos; i--)
X[1] 0 X[1] 0 x[i]=x[i-1];
X[0] 50 X[0] 50 x[pos]=valor;
[p ]
10
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
#include<iostream.h>
void IngresoArray( int, intFacultad de Ingeniería y Arquitectura
[]);
void InsercionArray(int,
InsercionArray(int int []);
void ImprimeArray(int n, int x[]);
void main(void)
{ int x[10], n;
cout<<"Ingrese cantidad de elementos de la lista "; cin>>n;
IngresoArray(n,x);
InsercionArray(n,x);
ImprimeArray(n x); }
ImprimeArray(n,x);
void IngresoArray(int n, int x[])
{ for (int i=0; i<n; i++)
{ cout<<"Elemento "<<i<<":";
cin>>x[i]; }
}
void InsercionArray(int n, int x[])
{ int pos,
pos valor,
valor i;
cout<<"Ingrese posición a insertar "; cin>>pos;
cout<<"Ingrese valor a insertar "; cin>>valor;
for (i=n; i>=pos; i--)
x[i]=x[i-1];
x[pos]=valor; }
void ImprimeArray(int n, int x[])
{ for (int i=0; i<=n; i++) //Un elemento adicional
cout<<"Elemento "<<i<<":"<<x[i]<<endl;
}
UPN Cajamarca 11
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
Si se ingresan n+1 elementos
Facultad de Ingeniería y Arquitectura
#include<iostream.h>
void main(void)
{ i
int x[9], i, n, pos, valor;
[9] i l
cout<<"Ingrese cantidad de elementos de la lista ";
cin>>n;
for (i=0; i<=n; i++)
{ cout<<"Elemento "<<i<<":";
cin>>x[i];
}
cout<<"Ingrese posición a insertar "; cin>>pos;
cout<<"Ingrese valor a insertar "; cin>>valor;
"I l i " i l
for (i=n+1; i>=pos; i‐‐)
{ x[i]=x[i‐1];
}
x[pos]=valor;
for (i=0; i<=n+1; i++)
for (i=0; i<=n+1; i++)
cout<<"Elemento "<<i<<":"<<x[i]<<endl;
UPN Cajamarca
}Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/201112
Modificación de Elementos
Modificación de Elementos
Facultad de Ingeniería y Arquitectura
14
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
void ModificacionArray(int n, int x[])
{ int Valor, NuevoValor,Facultad de Ingeniería y Arquitectura
band=0, pos, i;
cout<<"Ingrese valor a modificar ";
cin>>Valor;
cout<<"Ingrese Nuevo valor";
cin>>NuevoValor;
for (i=0; i<n; i++)
if (x[i]==Valor){
x[i]=NuevoValor;
pos =i;
band=1;
}
if (band==1)
cout<<"Valor encontrado en la p posicion: "<<pos<<endl;
p
else
cout<<"Valor No encontrado : "<<endl;
}
void ImprimeArray(int n, int x[])
{ for ((int i=0;; i<n;; i++)) //
//Un elemento adicional
cout<<"Elemento "<<i<<":"<<x[i]<<endl;
} 15
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
Facultad de Ingeniería y Arquitectura
Eliminación de Elementos
Eliminación de Elementos
I t X[7];
Int X[7] Eli i
Eliminar en X[3]
X[3], ell valor
l -123
123
X[6] 12 X[6] 12
12
X[5] 15 X[5] 15
15
X[4] 10 X[4] 10
10 Pos x[3]
X[3] 123 X[3] -123
for (i
(i=pos;
pos; i<n; i++)
x[i]=x[i+1]; 16
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
#include<iostream.h>
void IngresoArray
g y ( int, , int []);
Facultad de Ingeniería y Arquitectura
Métodos de Ordenamiento
Métodos de Ordenamiento
• Burbuja
• Selección
• Inserción
• Quick Sort
Quick Sort
• Shell
18
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
Código en C++
Código en C++
Facultad de Ingeniería y Arquitectura
19
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
Facultad de Ingeniería y Arquitectura
Método de Ordenamiento Burbuja
Método de Ordenamiento Burbuja
5 10 2 8 K A
♠ ♦ ♣ ♥ ♠ ♥
20
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
Facultad de Ingeniería y Arquitectura
Método de Ordenamiento Burbuja
Método de Ordenamiento Burbuja
5 10 2 8 A K
♠ ♦ ♣ ♥ ♥ ♠
21
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
Facultad de Ingeniería y Arquitectura
Método de Ordenamiento Burbuja
Método de Ordenamiento Burbuja
5 10 2 A 8 K
♠ ♦ ♣ ♥ ♥ ♠
22
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
Facultad de Ingeniería y Arquitectura
Método de Ordenamiento Burbuja
Método de Ordenamiento Burbuja
5 10 A 2 8 K
♠ ♦ ♥ ♣ ♥ ♠
23
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
Facultad de Ingeniería y Arquitectura
Método de Ordenamiento Burbuja
Método de Ordenamiento Burbuja
5 A 10 2 8 K
♠ ♥ ♦ ♣ ♥ ♠
24
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
Facultad de Ingeniería y Arquitectura
Método de Ordenamiento Burbuja
Método de Ordenamiento Burbuja
A 5 10 2 8 K
♥ ♠ ♦ ♣ ♥ ♠
25
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
Facultad de Ingeniería y Arquitectura
Método de Ordenamiento Burbuja
Método de Ordenamiento Burbuja
A 5 10 2 8 K
♥ ♠ ♦ ♣ ♥ ♠
26
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
Facultad de Ingeniería y Arquitectura
Método de Ordenamiento Burbuja
Método de Ordenamiento Burbuja
A 5 2 10 8 K
♥ ♠ ♣ ♦ ♥ ♠
27
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
Facultad de Ingeniería y Arquitectura
Método de Ordenamiento Burbuja
Método de Ordenamiento Burbuja
A 2 5 10 8 K
♥ ♣ ♠ ♦ ♥ ♠
28
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
Facultad de Ingeniería y Arquitectura
Método de Ordenamiento Burbuja
Método de Ordenamiento Burbuja
A 2 5 10 8 K
♥ ♣ ♠ ♦ ♥ ♠
29
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
Facultad de Ingeniería y Arquitectura
Método de Ordenamiento Burbuja
Método de Ordenamiento Burbuja
A 2 5 8 10 K
♥ ♣ ♠ ♥ ♦ ♠
30
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
Facultad de Ingeniería y Arquitectura
Método de Ordenamiento Burbuja
Método de Ordenamiento Burbuja
A 2 5 8 10 K
♥ ♣ ♠ ♥ ♦ ♠
31
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
Facultad de Ingeniería y Arquitectura
Método de Ordenamiento Burbuja
Método de Ordenamiento Burbuja
A 2 5 8 10 K
♥ ♣ ♠ ♥ ♦ ♠
32
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
Facultad de Ingeniería y Arquitectura
Método de Ordenamiento Burbuja
Método de Ordenamiento Burbuja
A 2 5 8 10 K
♥ ♣ ♠ ♥ ♦ ♠
33
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
Facultad de Ingeniería y Arquitectura
Método de Ordenamiento Burbuja
Método de Ordenamiento Burbuja
A 2 5 8 10 K
♥ ♣ ♠ ♥ ♦ ♠
Felicitaciones!!! Cartas ordenadas por burbuja
34
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
Facultad de Ingeniería y Arquitectura
35
Inteligencia de Negocios ‐ Patricia Uceda Martos pum@comunidad.upn.edu.pe 28/03/2011
Facultad de Ingeniería y Arquitectura
Otra Forma: