Como se hace una busqueda binaria en VB.NET ??
Publicado por Javier (30 intervenciones) el 19/03/2008 19:43:20
Hola nuevamente , quiero saber con un ejemplo como se hace para buscar un elemento en un Arreglo Unidimencional . con la funcion por defecto BinaySearch ( Arreglo, Valor ), ya que intente con un Ej. y se me desborda el arreglo cuando se ejecuta dicha funcion. muestro ejemplo :
odule Module1
Private Alumnos() As String = {" Zabaleta Alfredo ", "Morinico Pablo ", "Mendoza Angelica", " Dirie Juliana ", "Mendoza Frank ", "Alfonzo Javier"}
Sub Main()
Dim Resultado As String
Dim Posicion As Integer
Console.WriteLine("Ingrese el Alumno para la Busqueda : ")
Console.WriteLine()
Resultado = Console.ReadLine()
' Captura si no encuentra Alumno
Try
Posicion = Array.BinarySearch(Alumnos, Resultado)
' Verificacion
Console.WriteLine(" resultado de Posicion BinarySearch : {0}", Posicion)
Console.WriteLine()
Console.WriteLine(" Resultado de la Busqueda : {0} ", Alumnos(Posicion))
Console.WriteLine()
Catch e As IndexOutOfRangeException
Console.WriteLine(" No se encontro el Alumno")
Console.WriteLine()
End Try
Si busco el primero Zabaleta el Indice es - 7 ?¿ );
Labusqueda quequiero hacer en mis Aplicaciones es binaria No lineal !!! Saludos
odule Module1
Private Alumnos() As String = {" Zabaleta Alfredo ", "Morinico Pablo ", "Mendoza Angelica", " Dirie Juliana ", "Mendoza Frank ", "Alfonzo Javier"}
Sub Main()
Dim Resultado As String
Dim Posicion As Integer
Console.WriteLine("Ingrese el Alumno para la Busqueda : ")
Console.WriteLine()
Resultado = Console.ReadLine()
' Captura si no encuentra Alumno
Try
Posicion = Array.BinarySearch(Alumnos, Resultado)
' Verificacion
Console.WriteLine(" resultado de Posicion BinarySearch : {0}", Posicion)
Console.WriteLine()
Console.WriteLine(" Resultado de la Busqueda : {0} ", Alumnos(Posicion))
Console.WriteLine()
Catch e As IndexOutOfRangeException
Console.WriteLine(" No se encontro el Alumno")
Console.WriteLine()
End Try
Si busco el primero Zabaleta el Indice es - 7 ?¿ );
Labusqueda quequiero hacer en mis Aplicaciones es binaria No lineal !!! Saludos
Valora esta pregunta


0