Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> Bahasa C

std::daftar di C++ dengan Contoh

Apa itu std::list?

Dalam C++, std::list mengacu pada wadah penyimpanan. Std:list memungkinkan Anda untuk memasukkan dan menghapus item dari mana saja. std::list diimplementasikan sebagai daftar tertaut ganda. Ini berarti daftar data dapat diakses secara dua arah dan berurutan.

Daftar Pustaka Template Standar tidak mendukung akses acak cepat, tetapi mendukung akses berurutan dari semua arah.

Anda dapat menyebarkan elemen daftar dalam potongan memori yang berbeda. Informasi yang diperlukan untuk akses berurutan ke data disimpan dalam wadah. std::list dapat diperluas dan menyusut dari kedua ujungnya sesuai kebutuhan selama runtime. Pengalokasi internal secara otomatis memenuhi persyaratan penyimpanan.

Dalam tutorial C++ ini, Anda akan belajar:

Mengapa menggunakan std::list?

Berikut adalah alasan menggunakan std::List :

Sintaks Daftar

Untuk mendefinisikan std::list, kita harus mengimpor file header . Berikut adalah sintaks definisi std::list:

template < class Type, class Alloc =allocator<T> > class list;

Berikut adalah deskripsi dari parameter di atas:

Contoh 1:

#include <algorithm>
#include <iostream>
#include <list>
int main() {
	std::list<int> my_list = { 12, 5, 10, 9 };

	for (int x : my_list) {
		std::cout << x << '\n';
	}
}

Keluaran:

Berikut adalah screenshot kodenya:

Penjelasan Kode:

  1. Sertakan file header algoritma untuk menggunakan fungsinya.
  2. Sertakan file header iostream untuk menggunakan fungsinya.
  3. Sertakan file header daftar untuk menggunakan fungsinya.
  4. Panggil fungsi main(). Logika program harus ditambahkan di dalam isi fungsi ini.
  5. Buat daftar bernama my_list dengan kumpulan 4 bilangan bulat.
  6. Gunakan for loop untuk membuat variabel loop x. Variabel ini akan digunakan untuk mengulangi elemen daftar.
  7. Cetak nilai daftar di konsol.
  8. Akhir dari badan for loop.
  9. Akhir dari isi fungsi main().

Fungsi Daftar C++

Berikut adalah fungsi umum std::list:

Fungsi Deskripsi insert()Fungsi ini menyisipkan item baru sebelum posisi titik iterator.push_back()Fungsi ini menambahkan item baru di akhir daftar.push_front()Ini menambahkan item baru di bagian depan daftar.pop_front()Ini menghapus daftar first item.size()Fungsi ini menentukan jumlah elemen daftar.front()Untuk menentukan item pertama daftar.back()Untuk menentukan item terakhir daftar.reverse()Ini membalikkan item daftar.merge()Ini menggabungkan dua daftar yang diurutkan.

Konstruktor

Berikut adalah daftar fungsi yang disediakan oleh file header :

Contoh 2:

#include <iostream>
#include <list>
using namespace std;
int main(void) {
	list<int> l;
	list<int> l1 = { 10, 20, 30 };
	list<int> l2(l1.begin(), l1.end());
	list<int> l3(move(l1));  
	cout << "Size of list l: " << l.size() << endl;
	cout << "List l2 contents: " << endl;
	for (auto it = l2.begin(); it != l2.end(); ++it)
	      cout << *it << endl;
	cout << "List l3 contents: " << endl;
	for (auto it = l3.begin(); it != l3.end(); ++it)
		cout << *it << endl;
	return 0;
}

Keluaran:

Berikut adalah screenshot kodenya:

Penjelasan Kode:

  1. Sertakan file header iostream untuk menggunakan fungsinya.
  2. Sertakan file header daftar untuk menggunakan fungsinya.
  3. Sertakan namespace std dalam kode untuk menggunakan kelasnya tanpa memanggilnya.
  4. Panggil fungsi main(). Logika program harus ditambahkan di dalam isi fungsi ini.
  5. Buat daftar kosong bernama l.
  6. Buat daftar bernama l1 dengan kumpulan 3 bilangan bulat.
  7. Buat daftar bernama l2 dengan semua elemen dalam daftar bernama l1, dari awal hingga akhir.
  8. Buat daftar bernama l3 menggunakan semantik pindah. Daftar l3 akan memiliki konten yang sama dengan daftar l2.
  9. Cetak ukuran daftar bernama l di konsol bersama teks lainnya.
  10. Cetak beberapa teks di konsol.
  11. Buat iterator dengan nama dan gunakan untuk mengulangi elemen daftar bernama l2.
  12. Cetak elemen daftar bernama l2 di konsol.
  13. Cetak beberapa teks di konsol.
  14. Buat iterator dengan nama dan gunakan untuk mengulangi elemen daftar bernama l3.
  15. Cetak elemen daftar bernama l3 di konsol.
  16. Program harus mengembalikan nilai setelah berhasil diselesaikan.
  17. Akhir dari isi fungsi main().

Properti penampung

Berikut adalah daftar properti container:

Properti Deskripsi Wadah SequenceSequence mengurutkan elemennya dalam urutan linier yang ketat. Elemen diakses berdasarkan posisinya dalam urutan.Daftar tertaut gandaSetiap elemen memiliki informasi tentang cara menemukan elemen sebelumnya dan berikutnya. Hal ini memungkinkan waktu yang konstan untuk operasi penyisipan dan penghapusan. Sadar-Alokasi Objek pengalokasi digunakan untuk memodifikasi ukuran penyimpanan secara dinamis.

Memasukkan ke dalam Daftar

Ada berbagai fungsi yang dapat kita gunakan untuk memasukkan nilai ke dalam daftar. Mari kita tunjukkan ini:

Contoh 3:

#include <algorithm>
#include <iostream>
#include <list>
int main() {
	std::list<int> my_list = { 12, 5, 10, 9 };
	my_list.push_front(11);
	my_list.push_back(18);
	auto it = std::find(my_list.begin(), my_list.end(), 10);
	if (it != my_list.end()) {
		my_list.insert(it, 21);
	}
	for (int x : my_list) {
		std::cout << x << '\n';
	}
}

Keluaran:

Berikut adalah screenshot kodenya:

Penjelasan Kode:

  1. Sertakan file header algoritma untuk menggunakan fungsinya.
  2. Sertakan file header iostream untuk menggunakan fungsinya.
  3. Sertakan file header daftar untuk menggunakan fungsinya.
  4. Panggil fungsi main(). Logika program harus ditambahkan di dalam isi fungsi ini.
  5. Buat daftar bernama my_list dengan kumpulan 4 bilangan bulat.
  6. Sisipkan elemen 11 ke depan daftar bernama my_list.
  7. Sisipkan elemen 18 ke akhir daftar bernama my_list.
  8. Buat iteratornya dan gunakan untuk menemukan elemen 10 dari daftar my_list.
  9. Gunakan pernyataan if untuk menentukan apakah elemen di atas ditemukan atau tidak.
  10. Sisipkan elemen 21 sebelum elemen di atas jika ditemukan.
  11. Akhir dari isi pernyataan if.
  12. Gunakan for loop untuk membuat variabel loop x. Variabel ini akan digunakan untuk mengulangi elemen daftar.
  13. Cetak nilai daftar di konsol.
  14. Akhir dari badan for loop.
  15. Akhir dari isi fungsi main().

Menghapus dari Daftar

Dimungkinkan untuk menghapus item dari daftar. Fungsi erase() memungkinkan Anda menghapus item atau rentang item dari daftar.

Contoh 4:

#include <algorithm>
#include <iostream>
#include <list>
using namespace std;
int main() {
	std::list<int> my_list = { 12, 5, 10, 9 };
	cout << "List elements before deletion: ";
	for (int x : my_list) {
		std::cout << x << '\n';
	}
	list<int>::iterator i = my_list.begin();
	my_list.erase(i);
	cout << "\nList elements after deletion: ";
	for (int x : my_list) {
		std::cout << x << '\n';
	}
	return 0;
}

Keluaran:

Berikut screenshot kodenya:

Penjelasan Kode:

  1. Sertakan file header algoritma untuk menggunakan fungsinya.
  2. Sertakan file header iostream untuk menggunakan fungsinya.
  3. Sertakan file header daftar untuk menggunakan fungsinya.
  4. Sertakan ruang nama std dalam program kami untuk menggunakan kelasnya tanpa memanggilnya.
  5. Panggil fungsi main(). Logika program harus ditambahkan di dalam isi fungsi ini.
  6. Buat daftar bernama my_list dengan kumpulan 4 bilangan bulat.
  7. Cetak beberapa teks di konsol.
  8. Gunakan for loop untuk membuat variabel loop x. Variabel ini akan digunakan untuk mengulangi elemen daftar.
  9. Cetak nilai daftar di konsol.
  10. Akhir dari badan for loop.
  11. Buat iterator i yang menunjuk ke elemen pertama dari daftar.
  12. Gunakan fungsi erase() yang ditunjukkan oleh iterator i.
  13. Cetak beberapa teks di konsol.
  14. Gunakan for loop untuk membuat variabel loop x. Variabel ini akan digunakan untuk mengulangi elemen daftar.
  15. Cetak nilai daftar di konsol. Ini muncul setelah penghapusan.
  16. Akhir dari badan for loop.
  17. Program harus mengembalikan nilai setelah berhasil diselesaikan.
  18. Akhir dari isi fungsi main().

Ringkasan:


Bahasa C

  1. Operator di C++ dengan Contoh:Apa itu, Jenis dan Program
  2. C++ do… while loop dengan Contoh
  3. C++ Switch Case Statement dengan CONTOH
  4. C++ Alokasi Dinamis Array dengan Contoh
  5. C++ Pointer dengan Contoh
  6. Operator C++ Overloading dengan Contoh
  7. Struktur C++ Dengan Contoh
  8. Fungsi C++ dengan Contoh Program
  9. Perbedaan antara Struktur dan Kelas:Dijelaskan dengan Contoh C++
  10. Penghitung Python dalam Koleksi dengan Contoh