Πώς να αντιστρέψετε έναν πίνακα σε C ++, Python και JavaScript

Πώς να αντιστρέψετε έναν πίνακα σε C ++, Python και JavaScript

Ένας πίνακας είναι μια συλλογή στοιχείων που αποθηκεύονται σε γειτονικές θέσεις μνήμης. Η αντιστροφή ενός πίνακα είναι μία από τις πιο συνηθισμένες πράξεις που πρέπει να εκτελεστούν σε έναν πίνακα. Σε αυτό το άρθρο, θα μάθετε πώς μπορείτε να γράψετε τη δική σας εφαρμογή αναστροφής ενός πίνακα χρησιμοποιώντας επαναληπτικές και επαναληπτικές προσεγγίσεις.





Επαναληπτική προσέγγιση για την αντιστροφή ενός πίνακα

Δήλωση Προβλήματος

Σας δίνεται ένας πίνακας arr Το Πρέπει να αντιστρέψετε τα στοιχεία του πίνακα και, στη συνέχεια, να εκτυπώσετε τον αντίστροφο πίνακα. Πρέπει να εφαρμόσετε αυτήν τη λύση χρησιμοποιώντας βρόχους.





Παράδειγμα 1 : Έστω arr = [45, 12, 67, 63, 9, 23, 74]





Αντίστροφο arr = [74, 23, 9, 63, 67, 12, 45]

πώς να προωθήσετε αυτόματα μηνύματα κειμένου

Έτσι η έξοδος είναι: 74 23 9 63 67 12 45.



Παράδειγμα 2 : Αφήστε το arr = [1, 2, 3, 4, 5, 6, 7, 8]

Αντίστροφο arr = [8, 7, 6, 5, 4, 3, 2, 1]





Έτσι η έξοδος είναι: 8 7 6 5 4 3 2 1.

Προσέγγιση για την αντιστροφή ενός πίνακα χρησιμοποιώντας βρόχους

Μπορείτε να αντιστρέψετε τα στοιχεία ενός πίνακα χρησιμοποιώντας βρόχους ακολουθώντας την παρακάτω προσέγγιση:





  1. Αρχικοποιήστε τις μεταβλητές δείκτη 'i' και 'j' έτσι ώστε να δείχνουν τον πρώτο (0) και τον τελευταίο (sizeOfArray - 1) δείκτη του πίνακα αντίστοιχα.
  2. Σε έναν βρόχο, εναλλάξτε το στοιχείο στο δείκτη i με το στοιχείο στο δείκτη j.
  3. Αυξήστε την τιμή του i κατά 1 και μειώστε την τιμή του j κατά 1.
  4. Εκτελέστε το βρόχο μέχρι i

Πρόγραμμα C ++ για να αντιστρέψετε έναν πίνακα χρησιμοποιώντας βρόχους

Παρακάτω είναι το πρόγραμμα C ++ για να αντιστρέψετε έναν πίνακα χρησιμοποιώντας βρόχους:

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

Παραγωγή:

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

Σχετίζεται με: Πώς να αντιστρέψετε μια συμβολοσειρά σε C ++, Python και JavaScript

Πρόγραμμα Python για αντιστροφή ενός πίνακα χρησιμοποιώντας βρόχους

Παρακάτω είναι το πρόγραμμα Python για την αντιστροφή ενός πίνακα χρησιμοποιώντας βρόχους:

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

Παραγωγή:

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

Πρόγραμμα JavaScript για να αντιστρέψει έναν πίνακα χρησιμοποιώντας βρόχους

Παρακάτω είναι το πρόγραμμα JavaScript για να αντιστρέψετε έναν πίνακα χρησιμοποιώντας βρόχους:

Σχετίζεται με: Εισαγωγή στον αλγόριθμο ταξινόμησης συγχώνευσης

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

Παραγωγή:

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

Αναδρομική προσέγγιση για την αντιστροφή ενός πίνακα

Δήλωση Προβλήματος

Σας δίνεται ένας πίνακας arr Το Πρέπει να αντιστρέψετε τα στοιχεία του πίνακα και, στη συνέχεια, να εκτυπώσετε τον αντίστροφο πίνακα. Πρέπει να εφαρμόσετε αυτήν τη λύση χρησιμοποιώντας αναδρομή.

Παράδειγμα 1 : Έστω arr = [45, 12, 67, 63, 9, 23, 74]

Αντίστροφο arr = [74, 23, 9, 63, 67, 12, 45]

Έτσι η έξοδος είναι 74 23 9 63 67 12 45.

Παράδειγμα 2 : Αφήστε το arr = [1, 2, 3, 4, 5, 6, 7, 8]

Αντίστροφο arr = [8, 7, 6, 5, 4, 3, 2, 1]

Έτσι η έξοδος είναι 8 7 6 5 4 3 2 1.

Προσέγγιση για την αντιστροφή ενός πίνακα χρησιμοποιώντας την αναδρομή

Μπορείτε να αντιστρέψετε τα στοιχεία ενός πίνακα χρησιμοποιώντας την αναδρομή ακολουθώντας την παρακάτω προσέγγιση:

  1. Αρχικοποίηση μεταβλητών ευρετηρίου αρχή και τέλος έτσι ώστε να δείχνουν τον πρώτο (0) και τον τελευταίο (sizeOfArray - 1) δείκτη του πίνακα αντίστοιχα.
  2. Αντικαταστήστε το στοιχείο στο ευρετήριο αρχή με το στοιχείο στο ευρετήριο τέλος Το
  3. Καλέστε αναδρομικά την αντίστροφη συνάρτηση. Στις παραμέτρους της αντίστροφης συνάρτησης, αυξήστε την τιμή του αρχή κατά 1 και μειώνοντας την τιμή του τέλος κατά 1.
  4. Σταματήστε την αναδρομή όταν η τιμή του αρχή η μεταβλητή είναι μεγαλύτερη ή ίση με την τιμή του τέλος μεταβλητός.

Πρόγραμμα C ++ για την αντιστροφή ενός πίνακα χρησιμοποιώντας την αναδρομή

Παρακάτω είναι το πρόγραμμα C ++ για να αντιστρέψετε έναν πίνακα χρησιμοποιώντας την αναδρομή:

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

Παραγωγή:

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

Πρόγραμμα Python για την αντιστροφή ενός πίνακα χρησιμοποιώντας την αναδρομή

Παρακάτω είναι το πρόγραμμα Python για την αντιστροφή ενός πίνακα χρησιμοποιώντας την αναδρομή:

πώς να μετατρέψετε μια φωτογραφία σε εικονογράφηση στο illustrator

Σχετικά: Δυναμικός προγραμματισμός: Παραδείγματα, κοινά προβλήματα και λύσεις

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

Παραγωγή:

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

Πρόγραμμα JavaScript για να αντιστρέψετε έναν πίνακα χρησιμοποιώντας την αναδρομή

Παρακάτω είναι το πρόγραμμα JavaScript για να αντιστρέψετε έναν πίνακα χρησιμοποιώντας την αναδρομή:

Σχετικά: Πώς να βρείτε το άθροισμα των φυσικών αριθμών χρησιμοποιώντας την αναδρομή

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

Παραγωγή:

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

Χρησιμοποιήστε την αναδρομή για την επίλυση προβλημάτων

Μια αναδρομική συνάρτηση είναι μια συνάρτηση που καλεί τον εαυτό της. Στην αναδρομή, ένα πρόβλημα λύνεται με τη διάσπαση των προβλημάτων σε μικρότερες, απλούστερες εκδόσεις του εαυτού τους.

Υπάρχουν πολλά πλεονεκτήματα της αναδρομής: ο αναδρομικός κώδικας είναι συντομότερος από έναν επαναληπτικό κώδικα, μπορεί να χρησιμοποιηθεί για την επίλυση προβλημάτων που είναι φυσικά αναδρομικά, μπορεί να χρησιμοποιηθεί σε infix, πρόθεμα, αξιολογήσεις μετά επιδιορθώσεις, η αναδρομή μειώνει το χρόνο που απαιτείται για τη σύνταξη και κωδικός εντοπισμού σφαλμάτων κ.λπ.

Η αναδρομή είναι ένα αγαπημένο θέμα των συνεντευκτών στις τεχνικές συνεντεύξεις. Πρέπει να γνωρίζετε την αναδρομή και πώς να τη χρησιμοποιήσετε ενώ γράφετε κώδικα για να είστε ο πιο αποτελεσματικός προγραμματιστής που μπορείτε να είστε.

Μερίδιο Μερίδιο Τιτίβισμα ΗΛΕΚΤΡΟΝΙΚΗ ΔΙΕΥΘΥΝΣΗ Τι είναι το Recursion και πώς το χρησιμοποιείτε;

Μάθετε τα βασικά της αναδρομής, το βασικό αλλά ελαφρώς εργαλείο που στρέφει το μυαλό για τους προγραμματιστές.

Διαβάστε Επόμενο
Σχετικά θέματα
  • Προγραμματισμός
  • JavaScript
  • Πύθων
  • Φροντιστήρια κωδικοποίησης
Σχετικά με τον Συγγραφέα Γιουβράι Τσάντρα(Δημοσιεύθηκαν 60 άρθρα)

Ο Yuvraj είναι προπτυχιακός φοιτητής Πληροφορικής στο Πανεπιστήμιο του Δελχί, Ινδία. Είναι παθιασμένος με το Full Stack Web Development. Όταν δεν γράφει, εξερευνά το βάθος διαφορετικών τεχνολογιών.

Περισσότερα από τον Yuvraj Chandra

Εγγραφείτε στο newsletter μας

Εγγραφείτε στο ενημερωτικό μας δελτίο για τεχνικές συμβουλές, κριτικές, δωρεάν ebooks και αποκλειστικές προσφορές!

Κάντε κλικ εδώ για εγγραφή