Sådan vendes et array i C ++, Python og JavaScript

Sådan vendes et array i C ++, Python og JavaScript

En matrix er en samling af genstande, der er gemt på sammenhængende hukommelsessteder. Tilbageførsel af en matrix er en af ​​de mest almindelige operationer, der skal udføres på en matrix. I denne artikel lærer du, hvordan du skriver din egen implementering af reversering af et array ved hjælp af iterative og rekursive metoder.





Iterativ tilgang til at vende et array

Problemformulering

Du får et array arr . Du skal vende elementerne i arrayet og derefter udskrive det reverserede array. Du skal implementere denne løsning ved hjælp af loops.





Eksempel 1 : Lad arr = [45, 12, 67, 63, 9, 23, 74]





Omvendt arr = [74, 23, 9, 63, 67, 12, 45]

hvordan man reducerer lysstyrken på windows 10

Således er output: 74 23 9 63 67 12 45.



Eksempel 2 : Lad arr = [1, 2, 3, 4, 5, 6, 7, 8]

Omvendt arr = [8, 7, 6, 5, 4, 3, 2, 1]





Således er output: 8 7 6 5 4 3 2 1.

Fremgangsmåde til at vende et array ved hjælp af loops

Du kan vende elementerne i en matrix ved hjælp af loops ved at følge fremgangsmåden herunder:





  1. Initialiser indeksvariablerne 'i' og 'j' således, at de peger på henholdsvis det første (0) og det sidste (sizeOfArray - 1) indeks i arrayet.
  2. I en loop skal du skifte elementet ved indeks i med elementet ved indeks j.
  3. Forøg værdien af ​​i med 1 og formindsk værdien af ​​j med 1.
  4. Kør løkken, indtil i

C ++ - program til at vende et array ved hjælp af loops

Nedenfor er C ++ - programmet til at vende et array ved hjælp af loops:

// C++ program to reverse the elements of an array using loops
#include
using namespace std;

void reverseArr(int arr[], int size)
{
for(int i=0, j=size-1; i {
swap(arr[i], arr[j]);
}
}
void printArrayElements(int arr[], int size)
{
for(int i=0; i {
cout << arr[i] << ' ';
}
cout << endl;
}
// Driver Code
int main()
{
int arr[] = {45, 12, 67, 63, 9, 23, 74};
int size = sizeof(arr)/sizeof(arr[0]);
// Printing the original array
cout << 'Original Array: ' << endl;
printArrayElements(arr, size);
// Reversing the array
reverseArr(arr, size);
// Printing the reversed array
cout << 'Reversed array: ' << endl;
printArrayElements(arr, size);
return 0;
}

Produktion:

Original Array:
45 12 67 63 9 23 74
Reversed array:
74 23 9 63 67 12 45

Relaterede: Sådan vendes en streng i C ++, Python og JavaScript

Python -program til at vende et array ved hjælp af loops

Nedenfor er Python -programmet til at vende et array ved hjælp af loops:

# Python program to reverse the elements of a list using loops
def reverseList(arr, size):
i = 0
j = size-1
while i arr[i], arr[j] = arr[j], arr[i]
i = i + 1
j = j - 1
def printListElements(arr, size):
for i in range(size):
print(arr[i], end=' ')
print()
# Driver Code
arr = [45, 12, 67, 63, 9, 23, 74]
size = len(arr)
# Printing the original array
print('Original Array:')
printListElements(arr, size)
# Reversing the array
reverseList(arr, size)
# Printing the reversed array
print('Reversed Array:')
printListElements(arr, size)

Produktion:

Original Array:
45 12 67 63 9 23 74
Reversed array:
74 23 9 63 67 12 45

JavaScript -program til at vende et array ved hjælp af loops

Nedenfor er JavaScript -programmet til at vende et array ved hjælp af loops:

Relaterede: En introduktion til flette -sorteringsalgoritmen

// JavaScript program to reverse the elements of an array using loops
function reverseArr(arr, size) {
for(let i=0, j=size-1; i<(size)/2; i++, j--) {
[arr[i], arr[j]] = [arr[j], arr[i]];
}
}
function printArrayElements(arr, size) {
for(let i=0; i document.write(arr[i] + ' ');
}
document.write('
');
}
// Driver Code
var arr = [45, 12, 67, 63, 9, 23, 74];
var size = arr.length;
// Printing the original array
document.write('Original Array: ' + '
');
printArrayElements(arr, size);
// Reversing the array
reverseArr(arr, size);
// Printing the reversed array
document.write('Reversed Array: ' + '
');
printArrayElements(arr, size);

Produktion:

Original Array:
45 12 67 63 9 23 74
Reversed array:
74 23 9 63 67 12 45

Rekursiv tilgang til at vende et array

Problemformulering

Du får et array arr . Du skal vende elementerne i arrayet og derefter udskrive det reverserede array. Du skal implementere denne løsning ved hjælp af rekursion.

Eksempel 1 : Lad arr = [45, 12, 67, 63, 9, 23, 74]

Omvendt arr = [74, 23, 9, 63, 67, 12, 45]

Således er output 74 23 9 63 67 12 45.

Eksempel 2 : Lad arr = [1, 2, 3, 4, 5, 6, 7, 8]

Omvendt arr = [8, 7, 6, 5, 4, 3, 2, 1]

Således er output 8 7 6 5 4 3 2 1.

Fremgangsmåde til at vende et array ved hjælp af rekursion

Du kan vende elementerne i en matrix ved hjælp af rekursion ved at følge fremgangsmåden herunder:

  1. Initialiser indeksvariabler Start og ende sådan, at de peger på henholdsvis det første (0) og det sidste (sizeOfArray - 1) indeks i arrayet.
  2. Skift elementet ved indekset Start med elementet ved indekset ende .
  3. Rekursivt kalde den omvendte funktion. Forøg værdien af ​​i parametre for omvendt funktion Start med 1 og reducere værdien af ende med 1.
  4. Stop rekursionen, når værdien af Start variabel er større end eller lig med værdien af ende variabel.

C ++ - program til at vende et array ved hjælp af rekursion

Nedenfor er C ++ - programmet til at vende et array ved hjælp af rekursion:

// C++ program to reverse an array using recursion
#include
using namespace std;
void reverseArr(int arr[], int start, int end)
{
if (start >= end)
{
return;
}
swap(arr[start], arr[end]);
reverseArr(arr, start+1, end-1);
}
void printArrayElements(int arr[], int size)
{
for(int i=0; i {
cout << arr[i] << ' ';
}
cout << endl;
}
// Driver Code
int main()
{
int arr[] = {45, 12, 67, 63, 9, 23, 74};
int size = sizeof(arr)/sizeof(arr[0]);
// Printing the original array
cout << 'Original Array: ' << endl;
printArrayElements(arr, size);
// Reversing the array
reverseArr(arr, 0, size-1);
// Printing the reversed array
cout << 'Reversed array: ' << endl;
printArrayElements(arr, size);
return 0;
}

Produktion:

Original Array:
45 12 67 63 9 23 74
Reversed array:
74 23 9 63 67 12 45

Python -program til at vende et array ved hjælp af rekursion

Nedenfor er Python -programmet til at vende et array ved hjælp af rekursion:

vankyo matrixpad z4 10 tommer tablet

Relateret: Dynamisk programmering: eksempler, almindelige problemer og løsninger

# Python program to reverse an array using recursion
def reverseList(arr, start, end):
if start >= end:
return
arr[start], arr[end] = arr[end], arr[start]
reverseList(arr, start+1, end-1)
def printListElements(arr, size):
for i in range(size):
print(arr[i], end=' ')
print()
# Driver Code
arr = [45, 12, 67, 63, 9, 23, 74]
size = len(arr)
# Printing the original array
print('Original Array:')
printListElements(arr, size)
# Reversing the array
reverseList(arr, 0, size-1)
# Printing the reversed array
print('Reversed Array:')
printListElements(arr, size)

Produktion:

Original Array:
45 12 67 63 9 23 74
Reversed array:
74 23 9 63 67 12 45

JavaScript -program til at vende et array ved hjælp af rekursion

Nedenfor er JavaScript -programmet til at vende et array ved hjælp af rekursion:

Relateret: Sådan finder du summen af ​​naturlige tal ved hjælp af rekursion

// JavaScript program to reverse an array using recursion
function reverseArr(arr, start, end)
{
if (start >= end)
{
return;
}
[arr[start], arr[end]] = [arr[end], arr[start]];
reverseArr(arr, start+1, end-1);
}
function printArrayElements(arr, size)
{
for(let i=0; i {
document.write(arr[i] + ' ');
}
document.write('
');
}
// Driver Code
var arr = [45, 12, 67, 63, 9, 23, 74];
let size = arr.length;
// Printing the original array
document.write('Original Array: ' + '
');
printArrayElements(arr, size);
// Reversing the array
reverseArr(arr, 0, size-1);
// Printing the reversed array
document.write('Reversed Array: ' + '
');
printArrayElements(arr, size);

Produktion:

Original Array:
45 12 67 63 9 23 74
Reversed array:
74 23 9 63 67 12 45

Brug rekursion til at løse problemer

En rekursiv funktion er en funktion, der kalder sig selv. I rekursion løses et problem ved at opdele problemerne i mindre, enklere versioner af sig selv.

Der er mange fordele ved rekursion: den rekursive kode er kortere end en iterativ kode, den kan bruges til at løse de problemer, der er naturligt rekursive, den kan bruges i infiks, præfiks, postfix -evalueringer, rekursion reducerer den tid, der er nødvendig for at skrive og fejlretningskode osv.

Rekursion er et yndet emne for interviewere i tekniske interviews. Du skal vide om rekursion og hvordan du bruger den, mens du skriver kode for at være den mest effektive programmør, du kan være.

Del Del Tweet E -mail Hvad er rekursion, og hvordan bruger du det?

Lær det grundlæggende om rekursion, det vigtige, men let mind-bøjende værktøj til programmører.

Læs Næste
Relaterede emner
  • Programmering
  • JavaScript
  • Python
  • Kodning Tutorials
Om forfatteren Yuvraj Chandra(60 artikler udgivet)

Yuvraj er en datalogi bachelorstuderende ved University of Delhi, Indien. Han brænder for Full Stack Web Development. Når han ikke skriver, undersøger han dybden af ​​forskellige teknologier.

Mere fra Yuvraj Chandra

Abonner på vores nyhedsbrev

Tilmeld dig vores nyhedsbrev for at få tekniske tips, anmeldelser, gratis e -bøger og eksklusive tilbud!

Klik her for at abonnere