Experiencia de entrevista en Amazon | Set 395 (Presencial para Prácticas)

Ronda 1: un total de 300 estudiantes participaron en la noción de ser seleccionados para realizar una pasantía en Amazon.
La ronda 1 tenía 20 MCQ y 2 preguntas.

  1. Dado un rango [L,R], encuentre el recuento de números que tienen un número primo de bits establecidos en su representación binaria. [Esta sugerencia se incluyó en la sección O/P. Solo los números pares deben verificarse dentro del rango L,R]
    GeeksforGeeks Link

    Ejemplos :

    Input : 6 10 
    Output :2
    6 -> 110 (2 set bits, 2 is prime)
    10->1010 (2 set bits , 2 is prime)
    So 6,10 are even numbers having prime number of set bits
    (Use the optimized way to check prime by creating a array 
    of prime numbers and trying to divide the setbit count
    to check if it is prime or not).
    
  2. Dadas n líneas, un terreno se puede dividir en muchas áreas de diferentes medidas (por ejemplo, b). Se le proporciona una constante K . Tienes que encontrar si es posible usar áreas K de las áreas B
    Input : 2 4
    Output : True
    Think of a circle whenever a circle is split by 
    a n line the total number of areas is given by n*2 
    so the answer will be if(n*2>=k||n+1==k) return True.
    
  3. Un total de 30 estudiantes pasaron a la siguiente ronda.

Ronda 2:
Fue una ronda de vuelo en grupo. Mi amigo y yo nos sentamos en la misma habitación y nos pidieron codificar lo siguiente:

  1. Reorganice los caracteres en una string de modo que no haya dos adyacentes iguales
    . Pero no uso una pila. Usé hashmap para encontrar las ocurrencias de los caracteres. Creé una array de caracteres que atravesó el mapa con un iterador. Llené la array de caracteres con elementos en posiciones impares y luego, después de llenar todas las posiciones impares, llené las posiciones pares. Usó una función de validación para verificar si la string recién generada no tiene caracteres adyacentes que se repitan. Si la impresión es falsa, no se puede formar una string; de lo contrario, devuelva la string.
  2. Dado un árbol y un elemento K . Encuentre la ruta raíz-hoja con una suma igual a K y elimine la ruta. Enlace GeeksforGeeks
  3. Un total de 10 fueron preseleccionados.

    La siguiente fue la ronda final. Fue una ronda F2F.

    Ronda 3:
    El entrevistador me pidió que diera una breve introducción sobre mí.
    Luego pasó a lanzarme preguntas de codificación.

    1. Encuentre los elementos de intersección en 2 arrays desordenadas. Enlace GeeksforGeeks
      Input: 5 4 1 3 2
             12 3 15 1 7
      Output: 3 1
      

      Fuerza bruta: O (n ^ 2)
      , por lo que me pidió que codificara de manera optimizada.
      Me dieron tres restricciones
      tamaño de arr1,arr2 es m,n
      ¿qué hacer cuando m<<n(insignificante),n<<m,m aproximadamente igual a n?
      Dije que cuando el valor de m o n es insignificante, podemos ordenar la array de menor tamaño y hacer que una búsqueda binaria
      ordene O (nlogn) y la búsqueda binaria toma O (logn), pero como el tamaño de la array es insignificante, la clasificación no costará mucho.
      cuando son iguales (o aproximados), luego empuja todos los elementos a un conjunto y luego busca (O (logn)), aquí no usamos la clasificación ya que el tamaño de la array será más o menos igual, usamos más espacio disminuyendo así la complejidad del tiempo , de todos modos el tiempo de búsqueda es el mismo.

    2. Esta fue una pregunta interesante. Dados los boletos aéreos a diferentes ciudades en forma de un par de ciudades donde una indica el origen y la otra el destino. Nuestro trabajo es devolver una lista enlazada que indica la forma en que el viajero debe viajar para cubrir todas las ciudades. (La lista enlazada no fue mencionado por el entrevistador).
      Input: (Chennai,Bombay) (Bangalore,Goa) (Agra,Chennai) (Bombay,Bangalore)
      Output Agra->Chennai->Bombay->Bangalore->Goa
      

      Solución : Póngalos en un hashmap. Ahora encuentre las ocurrencias de todas las ciudades. En esto podemos notar que la fuente y el destino ocurren solo una vez en los boletos. Verifique con la lista de pares original para encontrar cuál es la fuente y cuál es el destino. Luego, con la ayuda de una función de comparación separada, inserte los pares en un nuevo mapa hash de tal manera que la fuente de un par debe haber sido el destino del par anterior). Luego, recorra el nuevo mapa hash para crear una lista vinculada y luego devuélvalo .

    3. El entrevistador también lo ayudará si solicita algún enfoque (pero no le pida más ayuda). Pero si el entrevistador intencionalmente da una pista, codifique como desee, ya que es una de sus formas de probar si puede. adaptarse a cualquier enfoque y código.

      Los resultados estaban disponibles y 8 personas obtuvieron pasantías.
      Por suerte yo era uno de ellos.
      Mi consejo personal: tenga confianza, mantenga alta su habilidad de comunicación, use el sitio web de geeksforgeeks para conocer la lista vinculada, los árboles, STL y DP y luego resuelva todas las preguntas específicas de la empresa.

      Este artículo es una contribución de Srinivas . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.

      Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.

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 *