Test Foro de elhacker.net SMF 2.1

Programación => Programación C/C++ => Mensaje iniciado por: TheFlash en 5 Enero 2017, 22:38 PM

Título: Insertar un array dentro de otro en una posición especifica.
Publicado por: TheFlash en 5 Enero 2017, 22:38 PM
La idea es que tengo dos vectores(arrays) y quiero insertar el contenido del primero en una posición específica del segundo.

He encontrado una forma ineficiente de hacerlo:
Código (cpp) [Seleccionar]

InsertaSecuencia(SecuenciaCaracteres a_insertar, int posicion){
for(int i=0; i < a_insertar.total_utilizados; i++){

     if (total_utilizados < TAMANIO  &&  pos_insercion >= 0   
         && posicion <= total_utilizados){

         for (int i = total_utilizados ; i > posicion ; i--)
            vector_privado[i] = vector_privado[i-1];

         vector_privado[posicion] = a_insertar.vector_privado[i];
         total_utilizados++;
         posicion++;
      }
}

*Nota: Se trata de un método dentro de una clase. Por eso muchas de las variables no están declaradas.

Pero la idea, y lo que me pide el ejercicio es hacer un algoritmo que haga lo mismo pero haciendo uso de un solo bucle.
Título: Re: Insertar un array dentro de otro en una posición especifica.
Publicado por: francosmp en 6 Enero 2017, 04:03 AM
Ola TheFlash ! pues veras, hay una biblioteca llamada vector a la cual le mandas la posicion y te insertara lo que desees.
aqui te dejo el link : http://www.cplusplus.com/reference/vector/vector/insert/