std::next vs std::advance en C++

std::advance y std::next se utilizan para avanzar el iterador en una determinada posición, de modo que podamos hacer que el iterador apunte a la posición deseada. Aunque ambos tienen el mismo propósito, pero su implementación es diferente entre sí. Esto hace que sea importante para nosotros entender la diferencia entre los dos. En C++11, std::next() … Continue reading «std::next vs std::advance en C++»

std::swap_ranges en C++

std::swap se utiliza para intercambiar elementos entre dos contenedores. Una de sus variantes es std::swap_ranges, que como sugiere su nombre se usa para intercambiar los elementos dentro de un rango. Simplemente intercambia los valores de cada uno de los elementos en el rango [first1, last1) con los de sus respectivos elementos en el rango que … Continue reading «std::swap_ranges en C++»

std::mover en C++

std::mover Mueve los elementos del rango [primero, último] al rango que comienza en resultado. El valor de los elementos en el [primero, último] se transfiere a los elementos señalados por resultado. Después de la llamada, los elementos en el rango [primero, último] se dejan en un estado no especificado pero válido. Modelo : OutputIterator move … Continue reading «std::mover en C++»

std::fixed, std::scientific, std::hexfloat, std::defaultfloat en C++

El formateo en las bibliotecas estándar de C++ se realiza mediante el uso de manipuladores, variables especiales u objetos que se colocan en el flujo de salida. Hay dos tipos de manipuladores de punto flotante, a saber, punto flotante fijo y punto flotante científico. Todos estos se definen en el encabezado <iostream> . Uso de … Continue reading «std::fixed, std::scientific, std::hexfloat, std::defaultfloat en C++»

Conteos de distintas substrings consecutivas de longitud dos usando C++ STL

Dada una string, la tarea es imprimir todas las substrings distintas de longitud dos en la string dada. Todas las substrings deben imprimirse en orden lexicográfico. Ejemplos:   Input: str = «abcab» Output: ab-2 bc-1 ca-1 Input: str = «xyz» Output: xy-1 yz-1 La idea de este artículo es demostrar el mapa y el par en … Continue reading «Conteos de distintas substrings consecutivas de longitud dos usando C++ STL»

Modificadores para Vector en C++ STL

Haga clic aquí para el Conjunto 1 de vectores. Modificadores 1.1 asignar (input_iterator primero, input_iterator último): asigna nuevo contenido al vector y cambia el tamaño 1.2 asigna (size_type n, const value_type g): asigna nuevo contenido al vector y cambia el tamaño #include <iostream> #include <vector>    using namespace std;    int main() {     vector <int> … Continue reading «Modificadores para Vector en C++ STL»

límite_inferior en C++

Plantillas lower_bound() :  Sintaxis 1:  ForwardIterator lower_bound (ForwardIterator primero, ForwardIterator último, const T& val); Sintaxis 2:  ForwardIterator lower_bound (ForwardIterator primero, ForwardIterator último, const T& val, Compare comp);   Parámetros: Los métodos anteriores aceptan los siguientes parámetros.   primero, último: el rango utilizado es [primero, último), que contiene todos los elementos entre primero y último, incluido el elemento señalado … Continue reading «límite_inferior en C++»

Conjuntos desordenados en la biblioteca de plantillas estándar de C++

Un conjunto_desordenado se implementa mediante una tabla hash en la que las claves se convierten en índices de una tabla hash para que la inserción siempre sea aleatoria. Todas las operaciones en unordered_set toman un tiempo constante O (1) en un promedio que puede llegar al tiempo lineal O (n) en el peor de los … Continue reading «Conjuntos desordenados en la biblioteca de plantillas estándar de C++»

Eliminar duplicados de una array ordenada usando STL en C++

Dada una array ordenada, la tarea es eliminar los elementos duplicados de la array usando STL en C++ Ejemplos: Input: arr[] = {2, 2, 2, 2, 2} Output: arr[] = {2} Input: arr[] = {1, 2, 2, 3, 4, 4, 4, 5, 5} Output: arr[] = {1, 2, 3, 4, 5} Enfoque: los duplicados de … Continue reading «Eliminar duplicados de una array ordenada usando STL en C++»

Priority_queue emplace() en C++ STL

Las colas de prioridad son un tipo de adaptadores de contenedores, diseñados específicamente para que el primer elemento de la cola sea el más grande o el más pequeño de todos los elementos de la cola. Sin embargo, en C++ STL (de manera predeterminada), el elemento más grande está en la parte superior. También podemos … Continue reading «Priority_queue emplace() en C++ STL»