Cada ronda ocurre en una base de eliminación directa.
Ronda 1: (Prueba basada en Hackerearth) [Tiempo: 1h15m]
Esta ronda tenía 2 preguntas.
- Dada una array de consultas de tamaño N y K, encuentre la cantidad de segmentos que contienen el índice (de consultas) que está más a la izquierda o más a la derecha y el número en el índice es> = cada elemento de ese segmento, por ejemplo: arr[] = [1,2 ,3] K = [3] -> o/p : 3 ([3],[2,3][1,2,3])
- Modificación de esta pregunta (https://leetcode.com/problems/find-k-closest-elements/).
Veredicto: despejado
Ronda 2: F2F [Tiempo: 1h]
- Dada una array y una suma objetivo k, encuentre todos los a[i] + a[j] = k. Seguimiento: maneje si la array tiene elementos duplicados y no duplicados
- Encuentre el primer carácter que no se repite en la string (solo con letras minúsculas) https://leetcode.com/problems/first-unique-character-in-a-string/. Seguimiento: i) contiene minúsculas y mayúsculas ii) no distingue entre mayúsculas y minúsculas iii) en la complejidad del espacio O(1)
Veredicto: despejado
Ronda 3: F2F [Tiempo: 1h]
- Averigüe si una lista enlazada es un palíndromo [complejidad esperada de tiempo y espacio: O(n) y O(1)]. https://leetcode.com/problems/palindrome-linked-list/
- Encuentre el diámetro del árbol binario (https://leetcode.com/problems/diameter-of-binary-tree/)
- Valide si un árbol es BST (https://leetcode.com/problems/validate-binary-search-tree/)
Veredicto: rechazado
Pensamientos/Análisis: La primera lógica/enfoque debe explicarse y se permitirá codificar solo si el entrevistador está satisfecho. En el primer corte se requiere la solución más óptima en cuanto a complejidad de tiempo y espacio. Si dice una solución de fuerza bruta / subóptima, se le pedirá que piense en una mejor solución y luego solo se le permitirá codificar. Si no pudo encontrar una solución en 20 minutos, la pregunta actual se pondrá en espera y se le hará la siguiente pregunta. La comprensión profunda de la complejidad del tiempo y el espacio es imprescindible.
Mis mejores deseos !!!