Programa C++ para atravesar una array

Dada una array de enteros de tamaño N , la tarea es recorrer e imprimir los elementos de la array.

Ejemplos:

Entrada: arr[] = {2, -1, 5, 6, 0, -3} 
Salida: 2 -1 5 6 0 -3

Entrada: arr[] = {4, 0, -2, -9, -7, 1} 
Salida: 4 0 -2 -9 -7 1 

Hay tres formas de recorrer los elementos de una array en C++:

  1. Uso de bucle for.
  2. Usando el bucle for_each.
  3. usando un bucle for basado en rango.

Comencemos discutiendo cada uno de estos métodos en detalle.

1. Uso del bucle for

A continuación se muestra el enfoque para atravesar una array utilizando el ciclo for.

Acercarse:

A. Inicie un ciclo de 0 a N-1 , donde N es el tamaño de la array.

para(i = 0; i < N; i++)

B. Acceda a cada elemento de la array con la ayuda de

arr[índice]

C. Imprimir los elementos.

cout << arr[i] << endl;

A continuación se muestra la implementación del enfoque anterior:

C++

// C++ program to traverse
// the array
#include <bits/stdc++.h>
using namespace std;
 
// Function to traverse and
// print the array
void printArray(int* arr, int n)
{
    int i;
 
    cout << "Array: ";
    for (i = 0; i < n; i++)
    {
        cout << arr[i] << "  ";
    }
}
 
// Driver code
int main()
{
    int arr[] = {2, -1, 5, 6, 0, -3};
    int n = sizeof(arr) / sizeof(arr[0]);
 
    printArray(arr, n);
    return 0;
}
Producción

Array: 2  -1  5  6  0  -3  

Complejidad de tiempo: O(n)

Espacio Auxiliar: O(1)

2. Usar un ciclo for-each

for_each es un poderoso algoritmo STL para operar en elementos de rango y aplicar funciones personalizadas. Toma el inicio del rango y los objetos del último iterador como los dos primeros parámetros y el objeto de función como el tercero. 
A continuación se muestra el programa C++ para implementar el enfoque anterior:

C++

// C++ program to traverse the
// array using for_each loop
#include <bits/stdc++.h>
#include <iostream>
using namespace std;
 
// Driver code
int main()
{
    int arr[] = {2, -1, 5, 6, 0, -3};
   
    // Traverse array with for_each
    // using array's data type
    cout << "Traverse using array's data type";
    for(int x : arr)
      cout << x << " ";
    cout << endl;
   
    // Traverse array with for_each
    // using auto keyword
    cout << "Traverse using auto keyword";
    for(auto x : arr)
      cout << x << " ";
    return 0;
}
Producción

Traverse using array's data type2 -1 5 6 0 -3 
Traverse using auto keyword2 -1 5 6 0 -3 

Complejidad temporal: O(n)
Espacio auxiliar: O(1)

3. Usar bucle basado en rango

El bucle basado en rango es la versión legible del bucle for. El siguiente código muestra cómo implementar el código anterior mediante un bucle basado en rango.

C++

// C++ program to traverse the
// array using range-based loop
#include <bits/stdc++.h>
#include <iostream>
using namespace std;
 
// Driver code
int main()
{
    int arr[] = {2, -1, 5, 6, 0, -3};
   
    for (const auto &var : arr) 
    { 
      cout << var << " " ; 
    }
    return 0;
}
Producción

2 -1 5 6 0 -3 

Complejidad temporal: O(n)
Espacio auxiliar: O(1)

Publicación traducida automáticamente

Artículo escrito por akgupta555 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *