AD

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

Ver cursos de R en Udemy

Enlace de afiliado. No te cuesta nada extra.

📊Lecciones de R
Lección 33 / 68

El algoritmo de búsqueda binaria

En esta lección buscarás en un vector 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 %/%, la división entera de R. Con / obtendrías un decimal y el índice no serviría. Y recuerda que aquí las posiciones empiezan en 1, así que el extremo inferior arranca en 1 y no en 0.

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

En R este algoritmo es sobre todo un ejercicio: la forma habitual de buscar es which(x == valor), que devuelve todas las posiciones coincidentes de una vez. Y para datos grandes de verdad, lo que se usa es el paquete data.table, que mantiene índices ordenados y hace la búsqueda binaria por dentro.

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

🧪 Este sitio no puede compilar ni ejecutar R 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)