Sería impresionante poder codificar un árbol splay desde la memoria. O describa cómo aplicar los métodos de Monte Carlo para encontrar un ciclo hamiltoniano en un gráfico. Conocer un par de algoritmos para encontrar los componentes conectados en una imagen también puede ser útil. Codificación de video fractal? Genial pero oscuro. La enumeración de coset de Todd-Coxeter es más un algoritmo especializado, pero si descubriera que usted lo sabía, probablemente tendríamos una buena discusión.
Nunca esperaría que un candidato a empleo (o un compañero de trabajo) supiera nada de esto. La familiaridad con el algoritmo y la estructura de datos se debe en gran medida a la experiencia educativa y laboral de una persona. Hay mucha variación en lo que los desarrolladores ven a lo largo de su carrera y no es una gran medida para determinar la capacidad de alguien para programar. La mayoría de las preguntas que he formulado en entrevistas requieren solo familiaridad con algoritmos básicos y estructura de datos.
Algunos trabajos muy especializados pueden requerir familiaridad con algoritmos particulares. Por ejemplo, alguien que trabaja en aprendizaje automático probablemente debería saber sobre el descenso de gradiente estocástico. Incluso entonces, probablemente no sea un requisito previo. Ni siquiera sabía sobre este algoritmo hasta que comencé a trabajar en PNL en Google.
- ¿Es posible ser un gran científico como Newton?
- Cómo mudarse a Nueva Zelanda
- ¿Cómo es para un ingeniero eléctrico unirse a Wipro como ingeniero de proyectos? ¿Cómo es el crecimiento profesional?
- ¿Por qué algunas buenas personas no se colocan bien?
- ¿Cuál es la mejor manera de negociar un acuerdo al salir de una empresa?