AD

¿Ya dominas lo básico? Un curso estructurado de VB.NET es la vía rápida para dar el salto.

Ver cursos de VB.NET en Udemy

Enlace de afiliado. No te cuesta nada extra.

🔷Lecciones de VB.NET
Lección 33 / 68

El algoritmo de búsqueda binaria

En esta lección buscarás en un array ordenado descartando la mitad en cada paso.

Se mira el elemento central: si es el buscado, ya está; si no, se descarta la mitad que no puede contenerlo.

El código de ejemplo busca un valor y devuelve su posición, o -1 si no está.

Fíjate en \ para calcular el punto medio: es la división entera de VB. Con / obtendrías un decimal y el índice no serviría — y con Option Strict On ni siquiera compilaría, lo que es preferible a un fallo silencioso.

La condición imprescindible es que el array esté ordenado. Sobre datos desordenados el algoritmo no da error: devuelve una respuesta equivocada.

Y el clásico: (low + high) \ 2 puede desbordar con arrays enormes. En VB.NET eso lanzaría una excepción en lugar de dar la vuelta, así que al menos se nota; la forma correcta es low + (high - low) \ 2.

.NET ofrece Array.BinarySearch, que además devuelve, cuando no encuentra, el complemento del punto de inserción — útil para mantener una lista ordenada.

📖 Código de referencia
✍️ Tu código
Escribe tu código y pulsa «Ejecutar»

🧪 Este sitio no puede compilar ni ejecutar VB.NET directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).

🔗 El mismo tema en otros lenguajes

Mira cómo se escribe lo mismo en otro lenguaje.

Espacio publicitario (banner)
Espacio publicitario (en el artículo)