Ronda 1 (Evaluación en línea 2 h 30 min): la evaluación constaba de cuatro componentes, una sección de depuración de código (20 minutos), una prueba de codificación (70 minutos), una evaluación de estilos de trabajo (20 minutos) y una sección de capacidad de razonamiento (35 minutos). ).
Preguntas de la prueba de codificación:
- Dado un número x, y una array ordenada por filas y columnas, verifique si x existe en la array o no.
- Dada una lista vinculada, cree una copia de esa lista vinculada y devuelva un puntero al encabezado de la nueva lista vinculada.
Ronda 2 (Entrevista en línea 30 minutos):
- Una pequeña discusión sobre árboles y grafos.
- Dado un grafo dirigido, comprueba si es un árbol o no. Escribir código limpio completo.
Ronda 3 (Entrevista en línea 1 hora):
Entrevistador: Seleccione cualquiera de sus proyectos, luego lo discutiremos.
Hizo una discusión detallada sobre el proyecto. El entrevistador preguntó muchos detalles técnicos relacionados con el enfoque, la implementación, los resultados, etc., y preguntas no técnicas como «¿cuál fue la parte más desafiante?». Esto tomó 30 minutos.
Pregunta de diseño: Tenemos un sistema donde los registros se generan continuamente. Digamos, algunos registros cada minuto. Cada registro tendrá una marca de tiempo. El tipo de registro puede ser un error, información, etc. Solo nos interesan los registros de errores. El error también puede ser de muchos tipos.
marca de tiempo | tipo de registro | tipo de subblog | número de instancias |
12/7/2020 12:35:00 | Error | a B C | 2 |
12/7/2020 12:36:25 | Error | xyz | 3 |
12/7/2020 12:36:25 | Información | pqr | 2 |
12/7/2020 12:37:20 | Error | xyz | 1 |
En cualquier momento queremos obtener tipos de error y su número de instancias en los últimos t minutos desde la hora actual. El valor de t depende de la consulta. Además, debería poder decir el nombre del error con el mayor número de instancias en los últimos t minutos.
Al entrevistador, luego se le pidió que indicara el nombre del k error principal con el mayor número de instancias en los últimos t minutos.
Algunas preguntas más pequeñas como «cómo almacenará los datos», «cómo hará esto», etc.
Ronda 4 (Entrevista en línea 1 hora):
- Dado un árbol binario, conviértalo en su árbol espejo. Escribí una función recursiva cuyo tipo de retorno era nulo. El entrevistador pidió además escribir una solución más, utilizando una función de tipo de devolución no nula. Luego, una pequeña discusión que compara ambos enfoques, la pila de recursividad, las complejidades de tiempo en el peor de los casos y en el promedio, etc.
- Dado un BST, un valor de Node y un número entero K. Imprime todos los Nodes que están a una distancia K del Node dado. Los Nodes a la distancia K de un Node pueden estar en las 3 direcciones. El camino de la izquierda, el camino de la derecha, el camino a través de los padres. El entrevistador pidió además hacer la misma pregunta para el árbol binario.
Pude responder a todas las preguntas y escribir un código limpio sin errores de una sola vez. Recibí la oferta 🙂
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA