Fui entrevistado en el campus para el puesto Flipkart de Ingeniería de desarrollo de software (SDE1).
Ronda de codificación: (90 minutos)
La ronda de codificación se realizó en hackerrank.
- Dados dos números a y b, encuentre el k-ésimo dígito desde la derecha de a^b. (El método Naïve solo lo ayudará a pasar la mitad de los casos de prueba)
- La segunda pregunta se basó en reducir una expresión dada a su forma más pequeña e imprimir una expresión lexicográficamente más pequeña.
- Se le proporcionan valores de n y m que denotan las filas y columnas. Rajesh comienza en la celda superior (0, 0). No visitará la celda visitada.
- Se mueve al punto hacia su derecha.
- Si no puede moverse un punto a la derecha, gira a la derecha y luego toma el camino a la derecha.
- Si después de realizar 4 operaciones de rotación, si no puede moverse, entonces se detendría
Imprime el número de celdas visitadas por él.
Muestra 1:
3 3
Salida: 9
Explicación:
1 2 9
4 3 8
5 6 7
El problema se puede resolver usando programación dinámica pero también hay una forma lógica de resolverlo en menos tiempo.
Entrevista Ronda 1:
Duración: 1 hora
- Dadas dos arrays de longitud n y n-1, todos los elementos de ambas arrays son iguales excepto uno. Encuentra el elemento impar, dando O (1) solución.
- Dados dos árboles binarios (no un árbol especial como el árbol de búsqueda binaria o el árbol negro rojo) con n y n-1 Nodes respectivamente, encuentre el Node impar.
- Dados dos árboles de búsqueda binarios con n y n-1 Nodes respectivamente con todos los elementos iguales excepto uno, encuentre el Node impar.
- Dada una array donde cada elemento representa la cantidad de celdas que se pueden omitir, encuentre la cantidad mínima de pasos necesarios para llegar a la última celda de la array. Uno tiene que comenzar en el índice 0 y siempre avanzar, ya sea saltando celdas por número dado o por uno.
Puntas:
Practique escribiendo pseudocódigos en papel y concéntrese en reducir la complejidad del tiempo y el espacio.
Entrevista Ronda 2:
Duración: 1 hora
- Dadas dos palabras (palabra inicial y palabra final) y un diccionario de palabras, busque todas las secuencias de transformación más cortas desde palabra inicial hasta palabra final, de modo que:
- Solo se puede cambiar una letra a la vez
- Cada palabra intermedia debe existir en el diccionario.
- Diseñe una estructura de datos tal que pueda usarse para realizar la siguiente operación
Inserción: O(1)
Supresión: O(1)
Buscar: O(1)
FindRand: O (1) esto devolverá cualquier elemento almacenado con cada elemento que tenga la misma probabilidad.
Sugerencia: se puede utilizar el generador de números aleatorios del sistema.
Entrevista Ronda 3:
Duración: 1 hora
Esta fue la última ronda de recursos humanos en la que se hicieron preguntas generales. Se hicieron preguntas del currículum que se centran principalmente en los proyectos que ha realizado.
Ronda 4:
Duración: 10 minutos
Dado un espacio de memoria de 1 GB, escriba el pseudocódigo para imprimir la string máxima que ocurre en cualquier momento donde el tamaño de la lista de strings puede ser de 10 GB y se actualiza dinámicamente.
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