Experiencia de entrevista de Eagleview Bangalore

Ronda de selección: hubo casi mil estudiantes que solicitaron esta ronda. Fue una prueba de Algo DS basada en computadora, se nos proporcionaron tres preguntas y tenemos 2.30 horas para completarlas. Todas las preguntas eran de nivel fácil a medio y pude completarlas en 40-45 minutos. Muchos de mis amigos también lo completaron en el mismo rango de tiempo. 

Ronda técnica 1: casi 80-90 estudiantes fueron preseleccionados para esta ronda, básicamente todos los que resolvieron las tres preguntas fueron seleccionados para la ronda técnica.

Esta ronda duró casi 60-70 minutos, el entrevistador fue muy amable, tal vez esa fue la razón por la que recuerdo su nombre (era Anoop en caso de que se lo pregunte). La entrevista comenzó con una introducción general, luego miró mi currículum y me preguntó. sobre mi experiencia en DS y Algo y codificación competitiva (me preguntó porque lo mencioné en mi currículum). Después de la introducción y algunas preguntas de React (nuevamente me preguntó porque lo mencioné en mi currículum), comenzó la verdadera entrevista de DS Algo.

Primera pregunta: Dada una array, encuentre el segundo elemento máximo.

Respuesta: Le di un enfoque de clasificación O ( N log N) , me pidió que lo optimizara, dado un enfoque O (n) + O (log N) usando heap , nuevamente me pidió que lo optimizara, en el último le di él una solución O(n) simple usando for loop. También le di una solución O(n) usando una pila.

Segunda pregunta: Imprime el recorrido posterior al pedido de un árbol.

Respuesta: Al darle la solución de un árbol dado, me pidió que escribiera código para él, le di la solución recursiva simple, me pidió que le diera el enfoque iterativo, lo escribí usando dos pilas .

Tercera Pregunta: Dado un árbol, conecte todos los Nodes adyacentes al mismo nivel en un árbol binario. me mostró la estructura del árbol que contenía un puntero adicional » siguiente» .

Respuesta: Se tomó un buen tiempo para pensar, luego le dio una solución trivial que usaba DFS con un parámetro de nivel o altura para realizar un seguimiento de los niveles y almacenarlo en un vector de vectores según su nivel. Luego me dijo que eliminara el espacio adicional de los vectores.

Me tomó un tiempo nuevamente y le di una solución usando una cola de tipo std::pair<treenode*, int>, nuevamente me pidió que elimine std::pair, me tomó un tiempo pero no pude encontrar un enfoque adecuado , le dije que no puedo venir con algo para realizar un seguimiento de los niveles sin usar std::pair, luego me preguntó si quería alguna pista de él, la tomé, me dijo «usa algún tipo de delimitador», Inmediatamente le dije que podemos usar NULL para realizar un seguimiento de los niveles y luego simplemente asignar los siguientes valores de acuerdo con la inserción de la cola. Parecía feliz y me preguntó si tenía algunas preguntas para él y me dijo que esperara afuera. Enlace de la pregunta.

Ronda técnica 2: casi 30-40 estudiantes fueron preseleccionados para esta ronda (solo mi aproximación, no sé las cifras exactas)

Esta vez, el entrevistador fue grosero y comenzó a hacer preguntas incluso antes de que me sentara, comenzó con preguntas de OOPS, me preguntó sobre la abstracción y encapsulación de datos , que pude responder. Luego me dio un caso de uso largo, habló durante casi un minuto, todo mientras deambulaba de aquí para allá en lugar de estar sentado, lo perdí en el medio pero esperé a que lo terminara y luego le pedí que lo repitiera o me explicara en papel, me dijo que lo dejara y me dio una pregunta de DS y Algo.

Pregunta: Encuentre si n! es divisible por 10^k o no, donde n y k son variables. (Esta vez no fue muy claro, pero le pregunté una y otra vez para asegurarme de que entendía la pregunta correctamente, parecía frustrado pero lo pregunté de todos modos XD).

Respuesta: ¡Le dije que básicamente, necesitamos encontrar el número de ceros en n! , si es mayor o igual a k entonces será divisible por 10^k de lo contrario no. Además, le di un enfoque de fuerza bruta que estaba tomando O (n) tiempo, me pidió que eliminara el bucle. Por lo tanto, le di un enfoque optimizado para resolverlo simplemente contando el número de ceros finales de n. .

La siguiente pregunta fue sobre programación dinámica. Me pidió que le diera un enfoque eficiente para encontrar la longitud máxima de una substring común en dos strings. Pero incluso antes de darle una solución, cambió la pregunta y me pidió que escribiera el código para insertarlo en el árbol AVL. Después de pensar durante algún tiempo, le dije que me había olvidado de las rotaciones involucradas en el árbol AVL, pero si me puede dar algunas pistas al respecto, puedo escribir el código fácilmente (ya que simplemente usa la inserción BST con algunas rotaciones para mantenerlo equilibrado).

Me dijo que dejara la pregunta y me planteó algunos acertijos que no pude responder correctamente, y así concluyó la entrevista y me pidió que esperara afuera.

Estado: ¡RECHAZADO en Segunda Ronda Técnica!

En caso de que se pregunte, 8 fueron seleccionados para la oferta de pasantías de EagleView.

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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *