UNIDIMENSIONALES
Prof. Robert Espinoza Domnguez
consultorsistemas@msn.com
35
65
34
57
31
24
ndice
A(2) = 34
Acciones primitivas
Leer un valor del arreglo
Leer A(ndice)
Escribir un valor en un arreglo
Escribir A(indice)
Asignar un valor a una posicin del arreglo
A(ndice) valor
Algoritmos bsicos
Carga de un arreglo
Accin Cargar ( A, n)
Para i 0 hasta n-1 hacer
Leer A(i)
Fin_para
Fin_Accin
Recorrido de un arreglo
Accin Recorrer ( A, n)
Para i 0 hasta n-1 hacer
Escribir A(i)
Fin_para
Fin_Accin
Bsqueda secuencial
Bsqueda secuencial
Accin Busqueda_Secuencial (A, n, valor)
i0
encontrado 0
Mientras (i< n y encontrado = 0) hacer
Si (valor = A (i) ) entonces
encontrado 1
Else
ii+1
Fin_si
Fin_Mientras
Bsqueda secuencial
Si (encontrado = 1) entonces
Escribir Valor encontrado en la posicin:, i
sino
Escribir Valor no encontrado
Fin si
Fin_Accin
Si (encontrado = 1) entonces
Escribir Valor encontrado en la posicin:, i
sino
Escribir Valor no encontrado
Fin si
Fin_Accin
Bsqueda binaria
Bsqueda binaria
Bsqueda binaria
Dado un vector V y un dato K, despus de comparar el
argumento K con el elemento mitad V(I), existen 3
posibilidades:
1.Que K < V(I), entonces se eliminan
V(I + 1), V(I + 2), ..., V(N-1) de la bsqueda.
2.Que K = V(I), entonces termina la bsqueda.
3.Que K > V(I), entonces se eliminan
V(0), V(1), ..., V(I) de la bsqueda.
Bsqueda binaria
Sea el siguiente conjunto de 8 elementos:
2, 8, 14, 17, 21, 26, 35, 42
y el valor a buscar es k = 35
El elemento central del arreglo es 17 (pos = 8/2). Como
35 > 17, se desechan los valores 2, 8, 14, y 17.
El proceso sigue, usando la mitad derecha del arreglo:
desde V[5] a V[8]. El elemento mitad de este nuevo subvector es 26. Como 35 > 26, descartamos los elementos
21 y 26.
Sigue la bsqueda con V[7] y V[8]. La mitad de este
intervalo es 35. Como es el valor buscado, el proceso
termina con xito.