Buscador

Bsqueda lineal

Este algoritmo de bsqueda consiste en posicionarse en el primer elemento del array, e ir recorrindolos todos hasta encontrar el dato que queremos, o bien llegar al final si la bsqueda no tiene xito. Recuerde el lector que los arrays en VB.NET comienzan por la posicin cero, por dicho motivo, cuando vamos a visualizar la posicin en la que se encuentra el valor localizado, le sumamos uno. Esta particularidad de los arrays en el lenguaje debe ser tenida en cuenta para todos los ejemplos. En el Cdigo fuente 207 se muestra el algoritmo empleado para esta tcnica.

' algoritmo de bsqueda lineal
Public Sub Main()
' array con valores a buscar
Dim Ciudades() As String = {"Londres", "Pars", "Roma", "Venecia", _
"Tokio", "Madrid", "Sevilla", "Barcelona"}
' guarda valor a buscar
Dim Buscar As String
' indicador que informa si se ha encontrado el valor
Dim Encontrado As Boolean
' contador de iteraciones en el array
Dim Contador As Integer
Console.WriteLine("Que ciudad buscamos?")
' introducir el valor a buscar
Buscar = Console.ReadLine()
' establecer el indicador de localizacin a no encontrado
Encontrado = False
buscar desde principio a fin del array
For Contador = 0 To UBound(Ciudades)
' si encontramos el valor introducido...
If Ciudades(Contador) = Buscar Then
' ... establecer el indicador encontrado a cierto
Encontrado = True
Console.WriteLine("Ciudad encontrada en la posicin {0}", Contador + 1)
' salir del bucle porque ya no hace falta seguir buscando
Exit For
End If
Next
' si el indicador de localizacin es False, es que hemos recorrido
' todo el array sin encontrar el valor
If Not Encontrado Then
Console.WriteLine("No se ha encontrado")
End If
Console.ReadLine()
End Sub
Cdigo fuente 207

El presente algoritmo slo es recomendable aplicarlo cuando trabajamos con pequeas cantidades de datos, ya que de lo contrario, la bsqueda tomara un excesivo tiempo para completarse.

No hay comentarios:

Publicar un comentario