Rumah > Artikel > pembangunan bahagian belakang > Program C++: Salin semua elemen satu tatasusunan ke tatasusunan lain
Struktur data tatasusunan digunakan untuk menyimpan data homogen dalam ingatan bersebelahan Lokasi mengaksesnya secara berurutan. Tatasusunan ialah struktur data linear, jadi Operasi asas pada tatasusunan boleh dilakukan dalam masa linear. Dalam artikel ini kita akan belajar bagaimana Salin elemen dari satu tatasusunan ke tatasusunan baharu yang lain dalam C++.
Memandangkan elemen tatasusunan adalah homogen, tatasusunan baharu akan mempunyai jenis yang sama. Selepas penciptaan Satu lagi tatasusunan dengan saiz yang sama, kami hanya menyalin elemen dari tatasusunan pertama ke tatasusunan kedua satu. Mari lihat algoritma dan pelaksanaan C++ untuk pemahaman yang lebih baik.
#include <iostream> using namespace std; void display( int arr[], int n ){ for ( int i = 0; i < n; i++ ) { cout << arr[i] << ", "; } } void solve( int arr[], int newArr[], int n ){ int i; for ( i = 0; i < n; i++ ) { newArr[ i ] = arr [ i ]; } } int main(){ int arr[] = {9, 15, 24, 28, 20, 6, 12, 78, 2, 12, 78, 44, 25, 115, 255, 14, 96, 84 }; int n = sizeof( arr ) / sizeof( arr[0] ); cout << "Given array: "; display(arr, n); int newArray[n] = {0}; solve( arr, newArray, n ); cout << "\nArray After copying: "; display(newArray, n); }
Given array: 9, 15, 24, 28, 20, 6, 12, 78, 2, 12, 78, 44, 25, 115, 255, 14, 96, 84, Array After copying: 9, 15, 24, 28, 20, 6, 12, 78, 2, 12, 78, 44, 25, 115, 255, 14, 96, 84,
Menyalin elemen daripada tatasusunan ialah salah satu tugas paling mudah dalam pengaturcaraan berasaskan tatasusunan. Kami mencipta tatasusunan baharu yang saiznya sekurang-kurangnya sama dengan saiz tatasusunan yang diberikan. Kemudian kami melintasi Berulang melalui setiap indeks tatasusunan yang diberikan dan menyalin elemen dalam tatasusunan yang diberikan kepada tatasusunan baharu Dalam kuantiti yang banyak. Oleh kerana tidak perlu melintasi tatasusunan beberapa kali, operasi boleh dilakukan Laksanakan dalam masa linear, jadi had atas asimptotik ialah O(n). Begitu juga dengan penggunaan ruang Tatasusunan baharu memerlukan jumlah ruang yang sama. Menyalin memerlukan jumlah O(n) ruang Elemen ditambah pada tatasusunan baharu.
Atas ialah kandungan terperinci Program C++: Salin semua elemen satu tatasusunan ke tatasusunan lain. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!