Nyheter i Android, Telefoner, Prylar Och Recensioner

Hur man vänder en array i C++, Python och JavaScript

En array är en samling objekt lagrade på sammanhängande minnesplatser. Omkastning av en array är en av de vanligaste operationerna som utförs på en array. I den här artikeln kommer du att lära dig hur du skriver din egen implementering av omkastning av en array med iterativa och rekursiva metoder.

Du får en array arr. Du måste vända om elementen i arrayen och sedan skriva ut den omvända arrayen. Du måste implementera den här lösningen med loopar.

Utgången är alltså: 74 23 9 63 67 12 45.

Utgången är alltså: 8 7 6 5 4 3 2 1.

Du kan vända elementen i en array med loopar genom att följa tillvägagångssättet nedan:

Initiera indexvariablerna “i” och “j” så att de pekar på det första (0) respektive det sista (sizeOfArray – 1) indexet i arrayen. I en slinga byter du elementet vid index i med elementet vid index j. Öka värdet på i med 1 och minska värdet på j med 1. Kör loopen tills i

C++-program för att vända en array med loopar

Nedan är C++-programmet för att vända en array med loopar:

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

void reverseArr(int arr[], int size)
{
for(int i=0, j=size-1; i<size/2; i++, j--)
{
swap(arr[i], arr[j]);
}
}
void printArrayElements(int arr[], int size)
{
for(int i=0; i<size; 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

Python-program för att vända en array med loopar

Nedan finns Python-programmet för att vända en array med loopar:

# Python program to reverse the elements of a list using loops
def reverseList(arr, size):
i = 0
j = size-1
while i<size/2:
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 för att vända en matris med loopar

Nedan finns JavaScript-programmet för att vända en array med loopar:

// 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<size; i++) {
document.write(arr[i] + " ");
}
document.write("<br>");
}
// Driver Code
var arr = [45, 12, 67, 63, 9, 23, 74];
var size = arr.length;
// Printing the original array
document.write("Original Array: " + "<br>");
printArrayElements(arr, size);
// Reversing the array
reverseArr(arr, size);
// Printing the reversed array
document.write("Reversed Array: " + "<br>");
printArrayElements(arr, size);

Produktion:

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

Rekursiv metod för att vända en matris

Problembeskrivning

Du får en array arr. Du måste vända om elementen i arrayen och sedan skriva ut den omvända arrayen. Du måste implementera denna lösning med hjälp av rekursion.

Relaterad  Apples privata iCloud-relä läcker användarnas IP-adresser: bör du vara orolig?

Exempel 1: Låt arr = [45, 12, 67, 63, 9, 23, 74]

Omvänt arr = [74, 23, 9, 63, 67, 12, 45]

Utgången är alltså 74 23 9 63 67 12 45.

Exempel 2: Låt arr = [1, 2, 3, 4, 5, 6, 7, 8]

Omvänt arr = [8, 7, 6, 5, 4, 3, 2, 1]

Utgången är alltså 8 7 6 5 4 3 2 1.

Tillvägagångssätt för att vända en matris med hjälp av rekursion

Du kan vända elementen i en array med hjälp av rekursion genom att följa tillvägagångssättet nedan:

    Initiera indexvariabler Start och slutet så att de pekar på det första (0) respektive det sista (sizeOfArray – 1) indexet för arrayen. Byt element vid indexet Start med elementet i indexet slutet. Anropa den omvända funktionen rekursivt. I parametrar för den omvända funktionen, öka värdet på Start med 1 och minska värdet på slutet med 1. Stoppa rekursionen när värdet på Start variabeln är större än eller lika med värdet på slutet variabel.

C++-program för att vända en matris med hjälp av rekursion

Nedan är C++-programmet för att vända en array med hjälp av rekursion:

// C++ program to reverse an array using recursion
#include <iostream>
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<size; 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 för att vända en matris med hjälp av rekursion

Nedan finns Python-programmet för att vända en array med hjälp av rekursion:

# 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 för att vända en array med hjälp av rekursion

Nedan finns JavaScript-programmet för att vända en array med hjälp av 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<size; i++)
{
document.write(arr[i] + " ");
}
document.write("<br>");
}
// Driver Code
var arr = [45, 12, 67, 63, 9, 23, 74];
let size = arr.length;
// Printing the original array
document.write("Original Array: " + "<br>");
printArrayElements(arr, size);
// Reversing the array
reverseArr(arr, 0, size-1);
// Printing the reversed array
document.write("Reversed Array: " + "<br>");
printArrayElements(arr, size);

Produktion:

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

Använd rekursion för att lösa problem

En rekursiv funktion är en funktion som kallar sig själv. Vid rekursion löses ett problem genom att bryta ner problemen i mindre, enklare versioner av sig själva.

Relaterad  Xiaomi hopfällbara telefonspionbilder släppta? - Nyheter i Android, Telefoner, Prylar Och Recensioner

Det finns många fördelar med rekursion: den rekursiva koden är kortare än en iterativ kod, den kan användas för att lösa de problem som är naturligt rekursiva, den kan användas i infix, prefix, postfix-utvärderingar, rekursion minskar tiden som behövs för att skriva och felsökningskod osv.

Rekursion är ett favoritämne för intervjuare i tekniska intervjuer. Du måste känna till rekursion och hur du använder den medan du skriver kod för att vara den mest effektiva programmeraren du kan vara.

Om författaren

Yuvraj Chandra (80 artiklar publicerade)

Yuvraj är en datavetenskapsstudent vid University of Delhi, Indien. Han brinner för Full Stack Web Development. När han inte skriver undersöker han djupet i olika teknologier.

Mer från Yuvraj Chandra

Prenumerera på vårt nyhetsbrev

Gå med i vårt nyhetsbrev för tekniska tips, recensioner, free e-böcker och exklusiva erbjudanden!

Klicka här för att prenumerera

Table of Contents