Kuinka kääntää taulukko C ++: ssa, Pythonissa ja JavaScriptissä

Kuinka kääntää taulukko C ++: ssa, Pythonissa ja JavaScriptissä

Taulukko on kokoelma kohteita, jotka on tallennettu viereisiin muistipaikkoihin. Taulukon kääntäminen on yksi yleisimmistä matriisin suoritetuista toiminnoista. Tässä artikkelissa opit kirjoittamaan oman toteutuksen taulukon kääntämisestä iteratiivisten ja rekursiivisten lähestymistapojen avulla.





Iteratiivinen lähestymistapa taulukon kääntämiseen

Ongelmailmoitus

Sinulle annetaan taulukko arr . Sinun on käännettävä taulukon elementit ja tulostettava sitten käänteinen taulukko. Tämä ratkaisu on otettava käyttöön silmukoiden avulla.





Esimerkki 1 : Olkoon arr = [45, 12, 67, 63, 9, 23, 74]





Käänteinen arr = [74, 23, 9, 63, 67, 12, 45]

miten voin tarkistaa iPhoneni virusten varalta

Tulos on siis: 74 23 9 63 67 12 45.



Esimerkki 2 : Olkoon arr = [1, 2, 3, 4, 5, 6, 7, 8]

Käänteinen arr = [8, 7, 6, 5, 4, 3, 2, 1]





Tulos on siis: 8 7 6 5 4 3 2 1.

Lähestymistapa taulukon kääntämiseen silmukoilla

Voit kääntää taulukon elementtejä silmukoiden avulla noudattamalla seuraavaa lähestymistapaa:





  1. Alusta indeksimuuttujat 'i' ja 'j' siten, että ne osoittavat taulukon ensimmäiseen (0) ja viimeiseen (sizeOfArray - 1) indeksiin.
  2. Vaihda silmukassa indeksin i elementti indeksin j elementin kanssa.
  3. Lisää i: n arvoa 1 ja pienennä j: n arvoa 1: llä.
  4. Suorita silmukka, kunnes i

C ++ -ohjelma taulukon kääntämiseksi silmukoilla

Alla on C ++ -ohjelma taulukon kääntämiseksi silmukoiden avulla:

// 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;
}

Lähtö:

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

Aiheeseen liittyviä: Kuinka kääntää merkkijono C ++: ssa, Pythonissa ja JavaScriptissä

Python -ohjelma kääntää taulukon silmukoilla

Alla on Python -ohjelma, joka kääntää taulukon silmukoiden avulla:

# 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)

Lähtö:

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

JavaScript -ohjelma kääntää taulukon silmukoiden avulla

Alla on JavaScript -ohjelma, joka kääntää taulukon silmukoiden avulla:

Aiheeseen liittyviä: Johdanto yhdistämislajittelualgoritmiin

// 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);

Lähtö:

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

Rekursiivinen lähestymistapa taulukon kääntämiseen

Ongelmailmoitus

Sinulle annetaan taulukko arr . Sinun on käännettävä taulukon elementit ja tulostettava sitten käänteinen taulukko. Sinun on otettava tämä ratkaisu käyttöön rekursion avulla.

Esimerkki 1 : Olkoon arr = [45, 12, 67, 63, 9, 23, 74]

Käänteinen arr = [74, 23, 9, 63, 67, 12, 45]

Siten lähtö on 74 23 9 63 67 12 45.

Esimerkki 2 : Olkoon arr = [1, 2, 3, 4, 5, 6, 7, 8]

Käänteinen arr = [8, 7, 6, 5, 4, 3, 2, 1]

Siten lähtö on 8 7 6 5 4 3 2 1.

Lähestymistapa taulukon kääntämiseen rekursion avulla

Voit kääntää matriisin elementtejä käyttämällä rekursiota noudattamalla seuraavaa lähestymistapaa:

  1. Alusta indeksimuuttujat alkaa ja loppuun siten, että ne osoittavat taulukon ensimmäiseen (0) ja viimeiseen (sizeOfArray - 1) indeksiin.
  2. Vaihda elementti indeksiin alkaa elementin kanssa indeksissä loppuun .
  3. Kutsu rekursiivisesti peruutustoiminto. Käänteisfunktion parametreissa lisää arvoa alkaa 1 ja pienennä arvoa loppuun mennessä 1.
  4. Pysäytä rekursio, kun alkaa muuttuja on suurempi tai yhtä suuri kuin loppuun muuttuja.

C ++ -ohjelma matriisin kääntämiseksi rekursion avulla

Alla on C ++ -ohjelma, joka muuttaa taulukon rekursion avulla:

// 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;
}

Lähtö:

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

Python -ohjelma kääntääksesi taulukon rekursion avulla

Alla on Python -ohjelma kääntääksesi taulukon rekursion avulla:

kuinka lähettää pin -drop

Aiheeseen liittyviä: Dynaaminen ohjelmointi: esimerkkejä, yleisiä ongelmia ja ratkaisuja

# 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)

Lähtö:

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

JavaScript -ohjelma kääntääksesi taulukon rekursion avulla

Alla on JavaScript -ohjelma, joka kääntää taulukon rekursion avulla:

Aiheeseen liittyviä: Kuinka löytää luonnollisten lukujen summa käyttämällä rekursiota

// 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);

Lähtö:

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

Käytä rekursiota ongelmien ratkaisemiseen

Rekursiivinen funktio on toiminto, joka kutsuu itseään. Rekursiossa ongelma ratkaistaan ​​jakamalla ongelmat pienempiin, yksinkertaisempiin versioihin itsestään.

Rekursiolla on monia etuja: rekursiivinen koodi on lyhyempi kuin iteratiivinen koodi, sitä voidaan käyttää ratkaisemaan luonnollisesti rekursiiviset ongelmat, sitä voidaan käyttää infix-, etuliite-, postfix -arvioinneissa, rekursio lyhentää kirjoittamiseen ja virheenkorjauskoodi jne.

Rekursio on haastattelijoiden suosikki aihe teknisissä haastatteluissa. Sinun on tiedettävä rekursiosta ja sen käytöstä koodin kirjoittamisen aikana, jotta voit olla tehokkain ohjelmoija.

Jaa Jaa Tweet Sähköposti Mikä on rekursio ja miten sitä käytetään?

Opi rekursion perusteet, joka on olennainen mutta hieman mieleenpainuva työkalu ohjelmoijille.

Lue seuraava
Liittyvät aiheet
  • Ohjelmointi
  • JavaScript
  • Python
  • Koodausoppaat
Kirjailijasta Yuvraj Chandra(60 artikkelia julkaistu)

Yuvraj on tietojenkäsittelytieteen perusopiskelija Delhin yliopistossa Intiassa. Hän on intohimoinen Full Stack Web -kehityksestä. Kun hän ei kirjoita, hän tutkii eri tekniikoiden syvyyttä.

Lisää Yuvraj Chandralta

tilaa uutiskirjeemme

Liity uutiskirjeeseemme saadaksesi teknisiä vinkkejä, arvosteluja, ilmaisia ​​e -kirjoja ja ainutlaatuisia tarjouksia!

Klikkaa tästä tilataksesi