Dipecahkan: vektor unik di

Pembaharuan Terakhir: 09/11/2023

Sebagai seorang programmer C++, saya bersemangat untuk membicarakan salah satu fitur unik bahasa ini – wadah vektor, khususnya kegunaan dan penggunaan fungsi 'unik' dalam sebuah vektor. Komponen kuat dari Perpustakaan Templat Standar (STL) C++ ini menyederhanakan organisasi data dan menyederhanakan upaya pengkodean kami. Memanfaatkan fungsi unik vektor dapat meningkatkan efisiensi program Anda secara eksponensial.

Fungsi 'unik' terutama menghilangkan duplikat berturut-turut dalam rentang tertentu yang ditentukan oleh wadah seperti vektor, dan mengembalikan iterator yang menunjuk ke elemen terakhir berikutnya yang tersisa.
Memahami vektor dalam C++ dan fungsi 'uniknya' sangat penting bagi siapa saja yang ingin mahir dalam bahasa pemrograman ini.

#include
#include
#include

int main ()
{
std::vektor vektor = {10, 20, 20, 30, 30, 30, 20, 20, 10};

std::sort(vec.begin(), vec.end());

std::vektor::ip iterator;

ip = std::unique(vec.begin(), vec.end());

vec.resize(std::distance(vec.begin(), ip));

untuk (ip = vec.begin(); ip != vec.end(); ip++) {
std::cout << *ip << " "; } kembalikan 0; } [/kode]

Penjelasan Kode C++:

Kode pertama mencakup header yang diperlukan – iostream untuk operasi input/output, vektor untuk menggunakan struktur data vektor, dan algoritma untuk mengakses fungsi 'unik'. Ia kemudian mendeklarasikan vektor 'vec' bilangan bulat dan menginisialisasinya dengan angka acak.

Fungsi 'sort' mengatur elemen dalam urutan menaik. Penyortiran penting karena fungsi 'unik' hanya menghapus duplikat yang berurutan. Jika duplikatnya tidak bersebelahan, duplikatnya tidak akan dihapus.

Fungsi 'unik' kemudian digunakan, dengan rentang menjadi awal dan akhir 'vec'. 'Unik' mengembalikan iterator yang menunjuk ke akhir rentang tanpa duplikat.

Peran Vektor dan metode 'Unik':

Output dari kode di atas akan menjadi “10 20 30”. Seperti yang dapat kita amati, semua nilai duplikat akan dihapus, dan hanya nilai unik yang tersisa. Hal yang perlu diperhatikan di sini, fungsi 'unik' tidak menghapus elemen duplikat, ia mengembalikan iterator ke elemen unik terakhir berikutnya dan tidak lebih dari itu, dan nilainya tetap tidak terdefinisi.

Baris 'vec.resize(std::distance(vec.begin(), ip))' adalah untuk menghapus elemen yang tidak terdefinisi dan mengubah ukuran vektor sesuai dengan nilai uniknya. Vektor terakhir kita tidak memiliki duplikat sekarang. Perulangan 'for' mencetak vektor terakhir.

Pemanfaatan Perpustakaan dan Fungsinya:

Menggunakan perpustakaan STL, seperti vektor dan algoritma, tidak hanya menghemat waktu dalam pengkodean tetapi juga memberikan solusi yang efisien dan mudah dipahami untuk tugas-tugas kompleks. Fungsi 'unik' dalam vektor adalah contoh utama. Itu mempertahankan urutan asli, menghapus duplikat berturut-turut dan memudahkan kami mengelola data. Ini sangat berguna, terutama ketika berhadapan dengan kumpulan data yang besar.

Oleh karena itu, memahami dan memanfaatkan pustaka dan fungsi yang telah ditentukan sebelumnya merupakan keterampilan penting bagi setiap programmer C++.

Pos terkait: