Contratación de Amazon SDE1 (fuera del campus): junio de 2019
Fueron 5 rondas.
Ronda 1 : (Codificación en papel)
Q1. Una persona está de pie en el centro (0, 0). Está mirando al norte (N). Puede haber 4 comandos posibles: girar a la izquierda, girar a la derecha, avanzar, retroceder. Encuentra las coordenadas finales después de un conjunto de instrucciones. Este es un problema de fácil implementación.
Q2. Encuentre la substring palindrómica más larga en una string dada. Esto se puede abordar de arriba hacia abajo o de abajo hacia arriba (DP).
Tuve que esperar 3 horas para el resultado de esta ronda. Cada ronda era una eliminación.
Ronda 2 :
Q1. Dado un árbol binario. Encuentre si hay una ruta desde la raíz hasta la hoja con la suma X dada. Después de responder la pregunta, el entrevistador me pidió que imprimiera todas las rutas posibles para el problema anterior.
Q2. Dado un árbol binario. Agregue enlaces en el árbol binario de tal manera que todos los Nodes en un nivel formen una lista enlazada.
El entrevistador me preguntó si tenía alguna pregunta.
Ronda 3 :
Me dieron una breve descripción general sobre el equipo para el que se está contratando: el equipo de pagos de Amazon.
Q1. Esto estaba algo relacionado con el recorrido en espiral modificado . Puedo describir vagamente el problema como la impresión de Nodes de nivel par (Node inicial 0) de derecha a izquierda y los Nodes de nivel impar de izquierda a derecha. Además, el orden de los niveles de impresión es – 0, 2, 1, 4, 3…
Q2. Esta fue una pregunta relacionada con el diseño de la estructura de datos donde el entrevistador me dijo que solo necesitaba explicar diferentes enfoques. Digamos que DJ está usando una aplicación (algo así como Amazon Music) donde recibe requests de personas y luego elige la enésima canción popular entre las requests actuales. Hay dos funciones: GetRequest() y NthPopular(). Discutió diferentes enfoques para almacenar requests de canciones y luego formas de recuperar Nth popular al verificar el conteo. En este tipo de preguntas, es muy importante aclarar los requisitos y luego iniciar la discusión.
Debo decir que el entrevistador fue un gran apoyo.
Ronda 4 :
Breve introducción sobre mí.
Q1. Dado un árbol binario, un Node N y una distancia K. Necesitamos contar todos los Nodes que están a una distancia K de N.
Q2. Una array se ordena por filas y por columnas. Necesitamos encontrar si existe un número N en esta array. Di una solución O (MlogN). Ya se nos estaba acabando el tiempo, así que ella me dio una pista y luego pude encontrar la solución O(M+N).
Ronda 5 :
La persona que me entrevistó era gerente senior de desarrollo de algún otro equipo. Además, tuve la sensación de que esta es una ronda que sube el listón.
Me pidieron que me presentara. Luego me preguntó sobre proyectos en mi empresa actual. Hubo algunas preguntas como: Cuénteme sobre su trabajo más desafiante. ¿Hubo alguna situación en la que enfrentó algún conflicto y cómo lo resolvió? ¿Hubo una situación en la que tomó la iniciativa de hacer algo? Estas preguntas se hacen para examinar los principios de Amazon. Además, en esta ronda, usted es quien realmente está conduciendo la entrevista. En el momento en que usa un término, se le pueden hacer diferentes preguntas sobre él. Toda la discusión tomó 1 hora.
Luego, hubo una pregunta de programación: contar todos los pares en una array cuya suma es X. Respondí un enfoque que almacena el conteo (mapas) de todos los números y verifico el conteo de (X-num) donde num es un elemento de la array y luego haciendo cálculos. Me pareció que no esperaba esta respuesta. Luego respondí el enfoque de mantener dos punteros: inicio y fin. Dijo que podía codificar cualquiera de los enfoques. Codifiqué el segundo enfoque pero me perdí un caso de prueba.
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