En el contexto de la programación competitiva, la respuesta es NO.
Estoy de acuerdo en que ambos implican mantener dos punteros. La técnica de optimización de dos punteros se aplica generalmente en alguna clase de problemas que involucran el recorrido de la matriz para calcular cierta cantidad y reducir la complejidad de O (N ^ 2) a O (N) u O (N log N). Al igual que la técnica de búsqueda binaria, se mantienen dos punteros, izquierdo y derecho, de modo que left <= right.
Pero la diferencia está en la forma en que avanzan los punteros. Ambos avanzan en la misma dirección en el caso de la técnica de optimización de dos punteros, donde, como en la búsqueda binaria, ambos punteros convergen a un punto particular.
- ¿Qué es la técnica Hashing?
- ¿Qué temas en algoritmos modernos no están cubiertos en CLRS?
- ¿Qué algoritmo siguen las historias de Instagram para mostrar a los espectadores?
- ¿Cuáles son los algoritmos necesarios para resolver div2 500 y div2 1000 fácilmente en topcoder?
- Estoy tratando de incrementar un elemento de matriz de caracteres inicializado a cero pero no puedo, ¿por qué?
Otra diferencia obvia. Los problemas que involucran dos técnicas de puntero no necesitan ser problemas de búsqueda. Considere el siguiente problema: dada una cadena de un millón de caracteres, calcule el número de subcadenas de modo que solo tengan un tipo de vocal.