Experiencia de entrevista Flipkart | SDE-1 (Experimentado)

Ronda 1: Ronda de codificación de máquina (1,5 horas)

Me dieron la siguiente declaración del problema y me pidieron que la implementara con cualquier lenguaje de programación. Esperaban que el código fuera de nivel de producción, modular y libre de errores. Después de esto, hubo una ronda de evaluación del código. Probaron el código con todos los casos de esquina y me pidieron que modificara el código para los nuevos requisitos, lo que pude hacer fácilmente.

Programador de trabajos

Un programador de trabajos para programar M trabajos en N subprocesos en una sola máquina. La entrada contiene los siguientes datos:

  1. Nombre del trabajo
  2. Duración: tiempo necesario para completar el trabajo
  3. Prioridad: prioridad del trabajo. P0 > P1 > P2
  4. Fecha límite: tiempo de caducidad después del cual no se debe ejecutar el trabajo (el reloj comienza desde 0 y la fecha límite es la hora real del reloj)
  5. UserType: Tipo de usuario que ha iniciado el trabajo, Precedencia de usuarios  Raíz > Admin > Usuario

Hay varios algoritmos de programación:

El trabajo más corto primero – SJF

Shortes job first (SJF), es una política de programación que selecciona el proceso de espera con el menor tiempo de ejecución para ejecutar a continuación. En caso de empate escoger el trabajo de acuerdo al siguiente orden-

  1. Prioridad (el trabajo de mayor prioridad se programa primero)

Primero en llegar Primero en servir -FCFS

Los trabajos se ejecutan por orden de llegada. Tome la entrada ya que el orden de los trabajos debe programarse.

Programación de prioridad fija -FPS

A cada proceso se le asigna una prioridad. El proceso con mayor prioridad se ejecutará primero y así sucesivamente. En caso de empate escoger el trabajo de acuerdo al siguiente orden-

  1. Tipo de usuario
  2. Primero el trabajo más largo

Fecha límite más temprana primero – EDF

El siguiente trabajo se buscará sobre la base del trabajo que esté más cerca de su fecha límite. En caso de empate, elegir el trabajo de acuerdo al siguiente orden-

  1. Prioridad (el trabajo de mayor prioridad se programa primero)
  2. Duración (el trabajo de menor duración se programa primero) En caso de que no podamos programar un trabajo para que se complete antes de su fecha límite, entonces debe ignorarse.

Se le dará una lista de trabajos (consulte el ejemplo a continuación para ver el formato) y la cantidad de subprocesos como entrada. Se espera que imprima el orden de los trabajos programados para cada algoritmo en cada subproceso como salida.

Ejemplo
Aporte

Threads= 2

Nombre del trabajo Duración Prioridad Plazo Tipo de usuario
J1 10 P0 10 Raíz
J2 20 P0 40 Administración
J 3 15 P2 40 Raíz
J4 30 P1 40 Usuario
J5 10 P2 30 Usuario
Producción
SJF
Thread 1 - J1, J3, J4
Thread 2 - J5, J2

FCFS
Thread 1 - J1, J3, J5
Thread 2 - J2, J4

FPS
Thread 1 - J1, J4, J5
Thread 2 - J2, J3

EDF
Thread 1 - J1, J2
Thread 3 - J5, J4

Ronda 2: Ronda PS-DS (1 hora)

Esta fue una ronda relacionada con la resolución de problemas y las estructuras de datos.

El entrevistador me hizo las siguientes preguntas con código de trabajo.

  1. En cualquier momento, encuentre el promedio de los números máximos de k de un flujo entrante de números infinitos. Lo resolví usando un montón mínimo de tamaño k y manteniendo una variable de suma para encontrar el promedio. Para cada inserción en min-heap, agregue el elemento a  sum y para cada eliminación de min-heap, reste el elemento de  sum. Para obtener la suma de retorno promedio / no. de elementos
  2. Copie el contenido de una pila dada a otra pila en el mismo orden sin usar espacio adicional.
  3. Problema de atrapamiento de agua de lluvia. https://www.geeksforgeeks.org/trapping-rain-water/

Resolví todos los problemas anteriores y mi entrevistador quedó satisfecho.

Ronda 3: Ronda de gerentes de contratación (1 hora)

El HM tuvo una discusión en profundidad sobre mi último proyecto y las tecnologías que había usado en el proyecto. También me hizo muchas preguntas sobre el comportamiento.

Después de unas semanas 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

Deja una respuesta

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