Depende de lo que clasifiques como divide y vencerás . La búsqueda lineal se puede reescribir como un algoritmo recursivo, pero no es un buen ejemplo de esto. Esto se debe a que es más como “pasar y ser perezoso”. Usted verifica una posición, luego divide el problema recursivamente en un trozo más pequeño, uno menos de tamaño. Técnicamente en el sentido más amplio, esto es dividir y conquistar, pero en realidad no captura la metáfora, no es cómo lo abordarías desde este ángulo. La idea es que desea dividir el problema en partes más fáciles de resolver, luego recombinar la solución después de que se resuelvan esas partes más fáciles (generalmente de forma recursiva de arriba hacia abajo).
Es bastante común ver otra forma de ajustar la búsqueda lineal en una configuración paralela, esto encajaría mejor en un enfoque de dividir y conquistar (si fuera a reescribirlo como un método recursivo), subdividir la matriz por intervalos y pasar estos intervalos a cada uno procesador y realice una búsqueda lineal en cada subintervalo, luego, si alguno de ellos devuelve verdadero, solo dé el primero que recupere. Puede hacer esto para acelerar la búsqueda lineal si esos fragmentos separados se pueden procesar en paralelo.
Independientemente de que la búsqueda lineal no sea realmente un buen ejemplo y realmente no se ajusta a la metáfora.
- ¿Cuáles son algunos consejos para crear mi propia biblioteca para competencias de codificación?
- ¿Cómo se ordenan las matrices para que los valores altos y bajos se distribuyan en diagonal?
- ¿Cómo funcionan los algoritmos de Quora para las respuestas?
- Cómo escribir una matriz para un libro de calificaciones que acepte 10 entradas y no requiera usarlas todas
- ¿Cómo podemos resolver el problema mencionado a continuación?