Generalmente estudiamos la mayoría de las técnicas algorítmicas en académicos como búsqueda , clasificación , programación dinámica , algoritmos codiciosos , divide y vencerás , retroceso , etc. Pero las siguientes técnicas generalmente no se enseñan y se usan mucho para resolver preguntas en entrevistas y programación competitiva.
En esta técnica preprocesamos la array y creamos otra array llamada array de suma de prefijos. La array de suma de prefijos calcula la suma de elementos desde el índice 0 hasta el índice actual.
- Índice de equilibrio de una array
- Encuentra si hay un subarreglo con suma 0
- Tamaño máximo del subarreglo, de modo que todos los subarreglos de ese tamaño tengan una suma menor que k :
- Números primos que se pueden escribir como la suma de la mayoría de los números primos consecutivos .
- Lapso más largo con la misma suma en dos arrays binarias:
- Máxima suma de subarreglo módulo m
- Tamaño máximo del subarreglo, de modo que todos los subarreglos de ese tamaño tengan una suma menor que k
- Entero máximo ocurrido en n rangos:
- Costo mínimo para adquirir todas las monedas con k monedas adicionales permitidas con cada moneda:
- Generador de números aleatorios en forma de distribución de probabilidad arbitraria:
Enlaces importantes:
Problemas de práctica sobre la suma de prefijos
Artículos recientes sobre la suma de prefijos
Dos punteros es realmente una técnica fácil y efectiva que se usa típicamente para buscar pares en una array ordenada.
- Encuentre el par más cercano de dos arrays ordenadas
- Encuentre el par en la array cuya suma es más cercana a x
- Encuentra todos los tripletes con suma cero
- Encuentre un triplete que sume un valor dado
- Encuentra un triplete tal que la suma de dos sea igual al tercer elemento
- Encuentra cuatro elementos que suman un valor dado
Enlaces importantes:
artículos recientes sobre
problemas de práctica de dos punteros en dos punteros
Técnica de deslizamiento de ventanas
Esta técnica muestra cómo un bucle for anidado en algunos problemas se puede convertir en un bucle for único para reducir la complejidad del tiempo.
- Máximo de todos los subarreglos de tamaño k
- Encuentra subarreglo con suma dada | Conjunto 1 (Números no negativos)
- Búsqueda de substrings de anagramas (o búsqueda de todas las permutaciones)
- Cuente las formas de llegar al escalón n.
- Subarreglo de tamaño k con suma dada
Enlaces importantes:
Problemas de práctica sobre ventanas corredizas
Artículos recientes sobre ventanas corredizas
Aparte de estos, STL en C++ y Collection en Java no se enseñan en académicos y estos son muy importantes si su programa está en C++ y Java respectivamente.
CONSEJO ADICIONAL: siempre que resuelva un problema, asegúrese de analizarlo correctamente. Aquí, el Análisis no es algo sobre su eficiencia, “se trata de encontrar un patrón en un problema”. Tener la práctica de agrupar problemas bajo una categoría de patrón te hará mejorar. Esto se debe a que cuando vuelves a mirar un problema similar, tu cerebro identifica el patrón instantáneamente y simplemente lo toma y te lo da. Esto parece ser rápido y también te hace sentir un poco seguro… ¡¡¡Feliz codificación!!!
Publicación traducida automáticamente
Artículo escrito por sowmyathiru5 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA