Perbedaan Antara Vektor dan List Perbedaan Antara

Anonim

Vektor vs Daftar

Sering membingungkan programmer, vektor dan daftar adalah urutan yang digunakan dalam kepemilikan array di C ++ dan Java. Kedua istilah tersebut menyimpan alamat array namun dengan berbagai metode memegang array.

Hal mendasar yang perlu kita ketahui adalah bahwa sebuah array adalah "daftar" yang menyimpan beberapa atau semua data, i. e., bilangan bulat, floating point, atau karakter dan didefinisikan dalam tanda kurung "[]. "

Sebenarnya, vektor dan daftar bertindak sesuai dengan kejadian. Jadi mari kita lihat kedua istilah ini satu persatu.

Vectors

Vektor digunakan dalam array holding dan elements accessing. Di sini Anda dapat mengakses elemen apapun secara acak menggunakan operator "[]". Jadi menjadi mudah untuk melihat melalui semua elemen atau satu elemen tertentu dengan operasi vektor. Jadi jika Anda memasukkan objek pada akhirnya, pada awalnya, atau di tengah, maka vektor memiliki nilai plus karena Anda bisa mengakses alamat acak dan melakukan perubahan di sana. Namun, vektor agak lambat dibandingkan dengan daftar objek. Vektor dianggap sebagai objek yang disinkronisasi, efisien dalam akses acak, dan mereka menyimpan data dengan benar dengan daftar yang disinkronkan. Sebuah vektor dipetik setiap kali tidak perlu dimasukkan atau dihapus di tengah (daftar)

atau dari depan.

Jumlah elemen dalam array mungkin berbeda secara dramatis.

Contoh:

vektor V;

V. masukkan (V. mulai (), 3);

menegaskan (V. Size () == 1 & & V. kapasitas ()> = 1 & & V [0] == 3);

Daftar

Daftar adalah "urutan ganda terkait" yang mendukung kedua traversal maju dan mundur. Waktu yang dibutuhkan dalam penyisipan dan penghapusan di awal, akhir, dan di tengah adalah konstan. Penyisipan dan penyambungan antar linked list tidak membatalkan iterasi apapun pada elemen. Hanya penghapusan yang membatalkan iterasi. Mereka tidak disinkronisasi sehingga tidak dapat diakses secara acak. Pengurutan iterasi dapat berubah sesuai dengan pengguna, namun tidak mempengaruhi perubahan elemen. Mereka lebih cepat daripada vektor dan ideal untuk penyisipan dan penghapusan di awal, tengah, dan akhir dari daftar elemen.

Contoh:

#include

// daftar definisi kelas template

….

int main ()

{

int array [4] = {2, 6, 4, 8};

std:: daftar nilai;

std:: daftar nilai lainnya;

Ringkasan:

1. Daftar tidak disinkronkan saat vektor berada.

2. Daftar tidak memiliki ukuran default sementara vektor memiliki ukuran standar 10.

3. Daftar dan vektor keduanya tumbuh secara dinamis.

4. Daftar tidak aman jika vektor adalah benang yang aman.

5. Daftar, karena hanya berlaku untuk penambahan dan penghapusan di bagian depan dan belakang, lebih cepat sementara vektor

mengambil lebih banyak CPU.

6. Sebuah vektor tumbuh dengan ukuran dua kali sementara daftar menurun menjadi setengahnya, i.e., 50 persen.