Cara Membalikkan Array di C++, Python, dan JavaScript

Cara Membalikkan Array di C++, Python, dan JavaScript

Array adalah kumpulan item yang disimpan di lokasi memori yang berdekatan. Pembalikan array adalah salah satu operasi yang paling umum dilakukan pada array. Dalam artikel ini, Anda akan mempelajari cara menulis implementasi pembalikan array Anda sendiri menggunakan pendekatan iteratif dan rekursif.





Pendekatan Iteratif untuk Membalikkan Array

Pernyataan masalah

Anda diberi array arr . Anda perlu membalik elemen larik, lalu mencetak larik terbalik. Anda perlu mengimplementasikan solusi ini menggunakan loop.





Contoh 1 : Misalkan arr = [45, 12, 67, 63, 9, 23, 74]





Arr terbalik = [74, 23, 9, 63, 67, 12, 45]

cara menggunakan usb windows 10 yang dapat di-boot

Jadi outputnya adalah: 74 23 9 63 67 12 45.



Contoh 2 : Misalkan arr = [1, 2, 3, 4, 5, 6, 7, 8]

Arr terbalik = [8, 7, 6, 5, 4, 3, 2, 1]





Jadi outputnya adalah: 8 7 6 5 4 3 2 1.

Pendekatan untuk Membalikkan Array Menggunakan Loop

Anda dapat membalikkan elemen array menggunakan loop dengan mengikuti pendekatan di bawah ini:





  1. Inisialisasi variabel indeks 'i' dan 'j' sedemikian rupa sehingga masing-masing menunjuk ke indeks pertama (0) dan terakhir (sizeOfArray - 1) dari array.
  2. Dalam satu lingkaran, tukar elemen pada indeks i dengan elemen pada indeks j.
  3. Menaikkan nilai i sebesar 1 dan mengurangi nilai j sebesar 1.
  4. Jalankan loop sampai i

Program C++ untuk Membalikkan Array Menggunakan Loop

Di bawah ini adalah program C++ untuk membalikkan array menggunakan loop:

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

Keluaran:

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

Terkait: Cara Membalikkan String di C++, Python, dan JavaScript

Program Python untuk Membalikkan Array Menggunakan Loop

Di bawah ini adalah program Python untuk membalikkan array menggunakan loop:

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

Keluaran:

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

Program JavaScript untuk Membalikkan Array Menggunakan Loop

Di bawah ini adalah program JavaScript untuk membalikkan array menggunakan loop:

Terkait: Pengantar Algoritma Pengurutan Gabung

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

Keluaran:

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

Pendekatan Rekursif untuk Membalikkan Array

Pernyataan masalah

Anda diberi array arr . Anda perlu membalik elemen larik, lalu mencetak larik terbalik. Anda perlu mengimplementasikan solusi ini menggunakan rekursi.

Contoh 1 : Misalkan arr = [45, 12, 67, 63, 9, 23, 74]

Arr terbalik = [74, 23, 9, 63, 67, 12, 45]

Jadi outputnya adalah 74 23 9 63 67 12 45.

Contoh 2 : Misalkan arr = [1, 2, 3, 4, 5, 6, 7, 8]

Arr terbalik = [8, 7, 6, 5, 4, 3, 2, 1]

Jadi outputnya adalah 8 7 6 5 4 3 2 1.

Pendekatan untuk Membalikkan Array Menggunakan Rekursi

Anda dapat membalikkan elemen array menggunakan rekursi dengan mengikuti pendekatan di bawah ini:

  1. Inisialisasi variabel indeks Mulailah dan akhir sedemikian rupa sehingga masing-masing menunjuk ke indeks pertama (0) dan terakhir (sizeOfArray - 1) dari array.
  2. Tukar elemen di indeks Mulailah dengan elemen pada indeks akhir .
  3. Panggil fungsi sebaliknya secara rekursif. Dalam parameter fungsi terbalik, tambahkan nilai Mulailah dengan 1 dan mengurangi nilai akhir oleh 1.
  4. Hentikan rekursi ketika nilai Mulailah variabel lebih besar atau sama dengan nilai akhir variabel.

Program C++ untuk Membalikkan Array Menggunakan Rekursi

Di bawah ini adalah program C++ untuk membalikkan array menggunakan rekursi:

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

Keluaran:

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

Program Python untuk Membalikkan Array Menggunakan Rekursi

Di bawah ini adalah program Python untuk membalikkan array menggunakan rekursi:

laptop tidak mau mengisi daya saat dicolokkan

Terkait: Pemrograman Dinamis: Contoh, Masalah Umum, dan Solusi

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

Keluaran:

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

Program JavaScript untuk Membalikkan Array Menggunakan Rekursi

Di bawah ini adalah program JavaScript untuk membalikkan array menggunakan rekursi:

Terkait: Cara Mencari Jumlah Bilangan Asli Menggunakan Rekursi

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

Keluaran:

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

Gunakan Rekursi untuk Memecahkan Masalah

Fungsi rekursif adalah fungsi yang memanggil dirinya sendiri. Dalam rekursi, masalah diselesaikan dengan memecah masalah menjadi versi yang lebih kecil dan lebih sederhana dari diri mereka sendiri.

Ada banyak keuntungan dari rekursi: kode rekursif lebih pendek dari kode iteratif, dapat digunakan untuk memecahkan masalah yang rekursif alami, dapat digunakan dalam evaluasi infix, prefix, postfix, rekursi mengurangi waktu yang dibutuhkan untuk menulis dan kode debug, dll.

Rekursi adalah topik favorit pewawancara dalam wawancara teknis. Anda harus tahu tentang rekursi dan bagaimana menggunakannya saat menulis kode untuk menjadi programmer yang paling efisien.

Membagikan Membagikan Menciak Surel Apa Itu Rekursi dan Bagaimana Cara Menggunakannya?

Pelajari dasar-dasar rekursi, alat yang penting tetapi sedikit membingungkan bagi programmer.

Baca Selanjutnya
Topik-topik yang berkaitan
  • Pemrograman
  • JavaScript
  • Python
  • Tutorial Pengkodean
Tentang Penulis Yuvraj Chandra(60 Artikel Diterbitkan)

Yuvraj adalah mahasiswa sarjana Ilmu Komputer di University of Delhi, India. Dia bersemangat tentang Pengembangan Web Full Stack. Ketika dia tidak menulis, dia menjelajahi kedalaman teknologi yang berbeda.

More From Yuvraj Chandra

Berlangganan newsletter kami

Bergabunglah dengan buletin kami untuk kiat teknologi, ulasan, ebook gratis, dan penawaran eksklusif!

Klik di sini untuk berlangganan