Me encanta la programación, pero tengo miedo de las preguntas de los algoritmos, ¿qué debo hacer?

Tuve un problema similar, te diré lo que hice y espero que te ayude. En realidad, voy a recomendar dos cosas.

Primero: Gayle Laakmann McDowell escribe un libro FANTÁSTICO llamado “Cracking the Coding Interview”, al cual no he vinculado, pero literalmente no soy capaz de recomendar lo suficiente. Debería tener su propio escuadrón de porristas, en serio. Tiene problemas que puedes practicar respondiendo en tu idioma elegido. Espere que esto tome un tiempo, pero vale la pena, y ella cubre CADA parte de la entrevista de codificación.

Lo que hice, porque cuando tenía este problema, Gayle Laakmann McDowell aún no había escrito su libro, fue cuando reuní una lista de los algoritmos “importantes” / “no intuitivos” o “difíciles” de libros como “Introducción de Thomas Cormen”. a Algoritmos ”y escribí pruebas contra las implementaciones que existían en mi idioma (Java) y luego escribí nuevas versiones de las clases que implementaron esa funcionalidad, hasta que mis versiones pudieran aprobar las pruebas aproximadamente, así como las implementaciones de referencia. Volver a las implementaciones de lenguaje fue muy útil para mí, porque una vez que acumulo suficiente “tejido cicatricial mental”, recordar algo es fácil.

Esto último tomó 2–3 meses de fines de semana, pero honestamente, la parte de los algoritmos de la entrevista era lo único que necesitaba ayuda para cubrir. Y todavía lo hago cuando tengo que volver a entrevistarme, porque ser entrevistado en tecnología tiene muy poco que ver con tu trabajo real.

¡Buena suerte!

Claramente, deberías ponerte al día con los algoritmos, incluso si necesitas memorizarlos.

¿Sabe por qué los algoritmos son importantes para una carrera que no tiene nada que ver con el desarrollo de algoritmos? Es la misma razón por la que el latín, y el griego, en menor medida, son importantes para la educación clásica: es un indicador de que ha adquirido el conocimiento para tener éxito en la tarea. Tenga en cuenta que los indicadores y las medidas son cosas diferentes.

¿Significa esto que solo las personas que poseen este conocimiento pueden hacerlo? No. Implica que las personas que poseen este conocimiento pueden hacerlo. Es una forma de filtrar candidatos que minimiza la pérdida del costo de oportunidad. Desafortunadamente, no tenemos medidas para determinar el mejor candidato, solo poseemos medidas que estiman al mejor candidato.

Aprende los algos.