¿La técnica codiciosa es útil para resolver problemas en entrevistas?

Cuando decimos que un algoritmo es codicioso, solo queremos decir que en cualquier momento dado, optimiza algún resultado a corto plazo. En algunos problemas (pero no en otros), la optimización en los puntos de decisión de un resultado particular a corto plazo también optimiza la función objetivo global.

Algunos problemas de la entrevista le piden que optimice alguna función objetivo (“Encontrar el máximo …”). En algunos de estos casos, la idea anterior puede conducir a una solución. En algunos casos, puede que no. Definitivamente es útil como técnica de resolución de problemas considerar si un enfoque ambicioso funcionaría o no. Entonces sí, es útil.

Su utilidad depende de lo que consideres un uso no trivial. Usas un razonamiento codicioso todo el tiempo y ni siquiera te das cuenta. Digamos que le pido que obtenga el valor máximo en una matriz. Usted razona que con cada nuevo valor que lee, puede tomar el mayor del máximo hasta ahora y el nuevo valor. Este es técnicamente un enfoque codicioso, ya que está optimizando el máximo global mediante un principio “local” de “tome lo que parece más grande en este momento”.

El razonamiento codicioso ya es una parte esencial de su razonamiento sobre muchos problemas. Estás preguntando qué tan útil es en casos donde no es obvio si es correcto, pero puedes ver cómo eso depende de dónde trazas la línea entre lo que es obvio y lo que no.


Nota al margen: el ejemplo anterior también muestra por qué nunca debe decir “solo use un método codicioso” para describir su enfoque a un problema. Sin más información sobre el resultado a corto plazo para el que está optimizando con avidez, o el orden en el que realiza la entrada, tal descripción no tiene sentido.

¡Conocer la ‘técnica codiciosa’ puede ser útil en algunas circunstancias!

Podría tener algunos problemas si intenta aplicar la técnica directamente durante el curso de la entrevista de trabajo. Por ejemplo:

¿Podría tener esta oficina? ¿Podría tener este escritorio en el que está sentado? Eso es un buen bolígrafo, ¿puedo tenerlo? ¿Me puede dar ese teléfono celular que está usando? ¿Cuál es el salario más alto que podría obtener?

More Interesting

¿Qué tipo de preguntas se hacen en la entrevista IOCL de los ingenieros químicos?

Se le da una matriz de n elementos [1,2, ... .n]. Por ejemplo {3,2,1,6,7,4,5}. Ahora creamos una firma de esta matriz comparando cada par de elementos consecutivos. Si aumentan, escriba I else write D.?

Cómo diferenciar entre Declaración y Definición de una variable

Cómo reorganizar elementos en una matriz bidimensional dada de enteros positivos para satisfacer cada suma de filas y columnas

¿Qué tipo de preguntas debo esperar en una entrevista de Yelp New Grad Software Engineer?

¿Cuáles son las buenas preguntas de la entrevista técnica de Google?

¿Cómo debo responder a las preguntas de la entrevista técnica cuando no sé la respuesta?

¿Cómo se debe responder 'Cuéntame sobre ti' en una entrevista técnica?

¿Por qué ha contratado Microsoft tantos graduados frescos este año en comparación con años anteriores?

¿Cuáles son las preguntas formuladas durante las entrevistas de colocación?

¿Cuál sería el formato de una entrevista telefónica técnica de primera ronda para un puesto de ingeniero de software (Nueva York) en Bloomberg?

En una entrevista en Google, ¿por qué me preguntaron sobre programación dinámica durante la ronda de entrevistas telefónicas?

¿Cuáles son los mejores ejemplos de implementación completa de estructuras de datos prominentes usando C (no C ++)?

Cómo encontrar la subcadena de repetición máxima de tamaño n

¿Cuál es la lección más importante o más interesante que has aprendido después de depurar un error difícil?