¿Cuáles son algunos problemas simples de algoritmo o de estructura de datos relacionados con el "abordaje blanco" que encuentra eficaces durante el proceso de selección de candidatos?Algoritmo/Estructura de datos Preguntas de entrevista de diseño
Tengo algunas ideas simples que yo uso para validar habilidades para resolver problemas y que puede expresarse simplemente, pero que tienen alguna oportunidad para la aplicación de algunas heurísticas.
Uno de los conceptos básicos que utilizo para los desarrolladores Junior es:
escribir un método de C# que toma una cadena que contiene un conjunto de palabras (una frase) y gira esas palabras X número de lugares a la derecho. Cuando una palabra en la última posición de la oración se gira, debe aparecer al frente de la cadena resultante.
Cuando un candidato responde esta pregunta, veo que están disponibles las estructuras de datos .NET y los métodos (cadena.Enlazar, secuencia.Split, Lista, etc ...) para resolver el problema. También busco que identifiquen casos especiales para la optimización. Al igual que la cantidad de veces que las palabras deben rotarse no es realmente X, es un X% de palabras.
Cuáles son algunos de los problemas de mesa blancos que se utilizan para entrevistar a un candidato y cuáles son algunas de las cosas que usted busca en una respuesta (no es necesario para publicar la respuesta real).
"Escribe un método que toma una cadena y devuelve verdadero si esa cadena es un número. (Cualquier cosa con expresiones regulares como la más eficiente responder)." Estoy seguro de que es ideal para su trabajo, pero donde trabajo si respondió esa pregunta con una solución de expresiones regulares que se consideraría muy mala. Eficiente en términos de tiempo del programador, pero no de tiempo de ejecución. El contexto es importante, incluso para problemas tan simples. – jheriko
Estoy buscando un uso eficiente de la pizarra y mi tiempo en la entrevista. Las expresiones regulares acordadas no son para la mayoría de las cosas. Para un ejemplo tan artificial, ¿realmente pondrías restricciones de tiempo de ejecución así? En general, donde se encuentra mi experiencia, no está analizando su código para el ciclo del reloj. Si lo fuera, no podría realmente ser administrado. – DevelopingChris
¿Cuál es el truco para tercero? Reemplazando |; | con algún otro personaje que no aparece en la cadena? –