Recientemente tuve la oportunidad de ser entrevistado para el puesto de MTS-1 en Adobe. Aquí está mi experiencia de entrevista:
- Ronda Escrita:
Parte A (50 min):
45 preguntas basadas en razonamiento lógico, DI, quant y geometría. Las preguntas eran fáciles, pero el problema real era el tiempo en esta ronda.Parte B (2 horas):
13 MCQ en C, conceptos básicos de C++ (referenciación y desreferenciación de punteros de string, tamaño de unión, etc.), conceptos básicos del sistema operativo7 preguntas de codificación. Algunos de los que recuerdo son:
- Invertir una lista enlazada .
- Comprobar si un número es un palíndromo o no .
- Multiplica dos números sin usar el operador * y usando el número mínimo de adiciones.
- Equilibrio de paréntesis .
- Encuentre la fila con el máximo de unos en una array 2D en la que en cada fila todos los 1 ocurren antes que todos los 0
- Compruebe si una suma dada está disponible en una array .
- F2F Ronda 1:
- Me pidieron que asignara una array 2D dinámicamente. Yo lo hice. Luego me pidieron que liberara la memoria asignada.
- Implemente un filtro promedio asumiendo un tamaño de ventana fijo en una imagen. Se requería el código completo. (Podemos ignorar los casos fronterizos). Primero lo hice usando un enfoque de fuerza bruta. El entrevistador luego me pidió que lo optimizara. Lo hice usando espacio adicional para almacenar la suma de elementos en un tamaño de ventana fijo para que no tengamos que calcularlo para cada píxel de la imagen.
- Me dijo que para una imagen muy grande (array 2D) el recorrido principal por filas es mejor que el recorrido principal por columnas. ¿Por qué?
La array completa no puede caber en la memoria principal al mismo tiempo. Las filas se asignan de forma contigua. Por lo tanto se beneficia de la localidad de referencia. - Preguntas sobre memoria virtual y paginación.
- ¿Qué estructura de datos debemos usar para representar polinomios y por qué?
- F2F Ronda 2:
- Implemente colas usando la lista enlazada . Se requería un código de trabajo completo con todos los casos de esquina.
El entrevistador quedó impresionado porque había manejado todos los casos de prueba correctamente. - El código más óptimo para calcular el número de bits establecidos en un número entero . (es decir, O (nº de bits establecidos))
- Diferencia entre proceso y subprocesos, multiprogramación y multiproceso, multiproceso y multitarea.
- Considere que hay 9 bolas. Una bola está defectuosa (puede ser pesada o liviana). Encuentre la bola defectuosa en un máximo de 3 pesajes.
Fui en la dirección equivocada porque pensé que había hecho esto antes. Pero me dio una o dos pistas y en base a eso pude llegar a la respuesta correcta.
- Implemente colas usando la lista enlazada . Se requería un código de trabajo completo con todos los casos de esquina.
- F2F Ronda 3:
- Hay 2 personas A y B. Tanto A como B tienen la misma velocidad para caminar. Tanto A como B tienen la misma velocidad de carrera. Ahora suponga que A corre la mitad del tiempo y camina la mitad del tiempo. Mientras que B corre la mitad de la distancia y camina la mitad de la distancia. ¿Podemos decir de manera concluyente quién ganará en una carrera?
- Hay dos arrays. Uno contiene n dígitos y el otro n-1 dígitos. ¿Cómo encontrar el dígito que falta en la segunda array?
Le pregunté al entrevistador si puedo asumir que los elementos son únicos. El dijo que sí. Luego lo resolví usando el método XOR. Preguntó qué pasa si los números son negativos o fraccionarios. Dije que como dos números negativos o 2 números decimales se almacenarán de la misma manera en la memoria, por lo tanto, XOR también funcionará para esos casos. - Encuentre la raíz cuadrada de ‘N’ sin usar la función de raíz cuadrada.
- Encuentra si el número ‘n’ es un palíndromo o no . Quería la mejor solución óptima con todos los casos especiales.
Finalmente, después de muchas sugerencias, pude reducirlo a una complejidad espacial O(1) y una complejidad temporal O(log(n/2)). ¡Estaba bastante satisfecho!
- Cuarta Ronda: Ronda de HR (30 Minutos)
Fue una experiencia increíble ya que los entrevistadores fueron muy amables y me hicieron sentir a gusto. Me gustaría agradecer al equipo de GeeksForGeeks por crear un portal tan maravilloso que me ayudó mucho en la preparación de mi entrevista.
Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo y enviarlo por correo electrónico a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
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