Compañía: One payu india, Gurgaon
Perfil : Ingeniero de Software
: Ronda de codificación
Consistía en 5 preguntas de codificación para realizar en 1 hora. La mayoría de ellas se basaban en algoritmos, pero algunas también eran ad hoc. Todo el mundo tiene un conjunto diferente de preguntas mezcladas de un conjunto de preguntas. Haz 3 y definitivamente pasarás a la siguiente ronda.
Alrededor de 30 fueron preseleccionados para las entrevistas.
Los entrevistadores se centraron principalmente en los conocimientos y habilidades de codificación.
No puedo recordar todas las preguntas.
En las tres entrevistas tengo que hacer códigos para todos los problemas.
:
1. Cuéntame sobre ti.
2. Dada una array de enteros de tamaño n que no tiene. de 1 a n+1 . encontrar el número que falta. Se esperan al menos dos soluciones.
3. Problema del Node P en la lista enlazada. Su solución. Le dije el ciclo de Floyd. Me preguntó por qué movía el puntero rápido por dos y no por cuatro. le dije que tenemos que verificar múltiples condiciones para encontrar si hay un segundo/tercer/cuarto Node; de lo contrario, si intentamos acceder a un Node que no existe, entonces es un error de tiempo de ejecución. Parecía satisfecho.
4. ¿Qué es una pila?
5. Encuentre elementos líderes y ii) el siguiente elemento mayor para todos en una array.
5. Encuentra si un árbol es un BST o no. Le di 2 soluciones: en orden de recorrido y verifique si está ordenado con o sin array, use la recursividad de arriba hacia abajo. Estaba esperando otra solución que use la propiedad de bst . Le dije la solución mínima, máxima. Me dijo que codificara las dos últimas.
6. Pregunta del juego: 2 jugadores juegan alternativamente. El primero siempre tiene que ganar. Puede elegir si jugar primero o segundo. Hay una variedad de monedas ( ints ). A la vez, el jugador puede elegir solo extremos extremos. 1 o 9, si elige 9, entonces otros pueden elegir solo 1 o 17. Finalmente, el jugador con la suma máxima de monedas ganará. ¿Qué estrategia elegirá el jugador 1 para ganar siempre? Lo resolví con la ayuda del entrevistador. Extendió la pregunta. Ahora el jugador 1 tiene que ganar con la suma máxima (una buena pregunta de dp).
La ronda salió muy bien y el entrevistador dijo que estaba impresionado 😀 .
:
1 . Dado un texto. Hay una string en algún lugar del texto que es una versión rotada de la string original. Encuentre y corrija la string rotada en el texto. Ejemplo: texto: había una empresa llamada entureacc en la década de 1990. cuerda: acento. dio la solución usando 2 arrays. me dijo que aprovechara el espacio (‘ ‘) y la solución de código. Entonces usé el espacio como delimitador y una solución codificada usando una array de caracteres de 26 tamaños.
2 . Invierte cada palabra en una string. Codifícalo. asegúrese de que su código no tenga ningún error e intente codificar más rápido.
3 . Discusión sobre las preguntas formuladas en la ronda anterior.
4. Herencia múltiple y multinivel en java. ¿Hay herencia múltiple en Java y por qué?
5. Preguntas de diseño: i) Diseñar un automóvil, ii) Diseñar un sistema de ascensores.
6. Rompecabezas de camello y plátano. Google para la declaración del problema.
7. Límite y recorrido en zigzag en un árbol.
Esta ronda fue perfecta y me llamaron para la tercera ronda inmediatamente.
:
Parecía una sala de interrogatorios de la policía con solo 2 sillas y una mesa. El entrevistador me dijo que tenía que escribir códigos completos para todos los problemas de esta ronda. Me quedé confiado…desde afuera..
1) Girar una array cuadrada 90 grados usando el espacio O(1). La pregunta era nueva para mí y después de esforzarme durante unos 10-15 minutos mientras el entrevistador estaba ocupado con su computadora portátil, la resolví y escribí el código completo.
2) Dado un árbol binario, me dieron dos punteros p1 y p2 a dos Nodes en el árbol. Tengo que intercambiar el subárbol enraizado con estos Nodes. me preguntó los casos base para este problema. Le dije que ninguno de p1 y p2 debería ser antepasado de otro .p1 y p2 deberían estar en el árbol y no deberían ser nulos. Otra restricción fue que puedo atravesar el árbol solo una vez. Le dije que encontraría lca de ambos Nodes y realizaría un seguimiento de todos los ancestros de ambos usando una array y luego usaría esta array para realizar el intercambio. me dijo que lo codificara.
:
Solo una formalidad. Pregunté todo sobre mí. Cómo fueron las rondas anteriores. Lo que sé sobre payu. Reubicación, CTC, días laborables, etc.
Lectura recomendada: geeksforgeeks.org/data-structures, headfirst for java, os video conferencias de pk biswas.
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