Experiencia de entrevista de WhiteHat Jr para ingeniero de software | 2 años de experiencia

La ronda 1:

LLD: Diseñar un sistema de alquiler de vehículos.

Debe ser capaz de diseñar un sistema extensible y el código debe ser compilable y ejecutable y cumplir con los requisitos establecidos.

La ronda 2:

  1. Encuentre la mediana de dos arrays ordenadas 
    Enfoque: 
    1. Usando la operación de combinación de clasificación por combinación, genere una array auxiliar y encuentre la mediana 
    • Complejidad del tiempo – O(m + n)
    • Complejidad espacial – O(m + n)
    • si m + n es impar entonces (m + n) / 2º elemento
    • si m + n es par entonces (((m + n) / 2)th + (((m + n)/2) – 1)th) / 2
    • Entonces, en lugar de almacenar todos los valores en una array auxiliar al fusionar, almacene los elementos actual y anterior hasta el elemento actual! = ((m + n)/2)th
  2. Vista inferior de un árbol binario ( https://www.geeksforgeeks.org/bottom-view-binary-tree/
    Sugerencia: almacene las distancias horizontales de cada Node para cada nivel.

Ronda 3:

  1. Encuentra si la string es la rotación de otra string.

         Dada una string `abcde` y otra string `dea`, encuentre si `dea` es una rotación de `abcde`. 

         En este caso, debería devolver verdadero. 

         Si las strings son `abcde` y `bde` devolverá falso.

        2. Recorrido de orden de niveles de un árbol binario, imprima cada nivel en una nueva línea.

             Se solicitó un enfoque adicional para extender el código para el árbol n-ario            

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 *