Dalam panduan komprehensif ini, kami akan mendemonstrasikan fungsi “lexicographical_compare()” di C++ dengan program ini.
Apa itu Fungsi “lexicographical_compare()” di C++
Di C++, fungsi “lexicograpfical_compare()” adalah operasi yang sangat efektif untuk membandingkan dan mengurutkan elemen secara berurutan (urutan leksikografis). Ini menyediakan fasilitas untuk menentukan urutan masing-masing yang merupakan hasil dari membandingkan urutan, seperti rentang dan string. Fungsi ini dapat diakses di C++ dengan menggunakan “
Sintaksis
Berikut adalah sintaks fungsi “lexicographical_compare()” di C++:
templat < kelas InputIter1, kelas InputIter2 >
bool perbandingan_leksikografis ( InputIter1 pertama1, InputIter1 terakhir1, InputIter2 pertama2, InputIter2 terakhir2 ) ;
Menurut kode yang diberikan di atas, ' leksikografis_bandingkan() ” fungsi menerima dua pasang rentang “ pertama1 ' Dan ' terakhir1 ” masukkan iterator untuk rentang pertama dan “ pertama2 ' Dan ' last2 ” masukkan iterator untuk rentang detik. Ini cocok dengan kedua elemen rentang dalam urutan leksikografis.
Jenis Pengembalian: Ini mengembalikan nilai boolean (benar atau salah). Ini akan mengembalikan true ketika rentang pertama secara leksikografis lebih kecil dari rentang kedua, jika tidak mengembalikan false.
Pengecualian: Jika ada kesalahan yang ditemukan selama perbandingan, itu akan memunculkan pengecualian.
Cara Mengurutkan Vektor Menggunakan Fungsi lexicographical_compare() C++
Fungsi “lexicographical_compare()” sering digunakan dalam teknik sorting untuk mengetahui urutan elemen. Ini cocok dengan urutan masing-masing elemen hingga rentang selesai.
Contoh Fungsi lexicograpical_compare() Mengurutkan dan Membandingkan Vektor String
Mari kita lihat contoh yang disediakan yang menunjukkan “ menyortir() ” metode dengan “ leksikografis_bandingkan() ”:
#termasuk#termasuk
#sertakan
menggunakan ruang nama std ;
Di Sini:
- “
” digunakan untuk operasi input dan output.
“
- “
” file header digunakan untuk mengakses metode “sort()” untuk fungsi “lexicographical_compare()”. - “ menggunakan namespace std ” disebut sebagai arahan yang menggunakan semua nama dari namespace tanpa secara eksplisit menyebutkan awalan 'std'.
Selanjutnya, di dalam “ utama() ”, kami menginisialisasi dua vektor” vect1 ' Dan ' vect2 ” dengan string yang sama. Setelah ini, gunakan ' menyortir() ” metode untuk mengurutkan elemen dalam urutan leksikografis dari kedua vektor dengan “ vect1.begin() ' Dan ' vektor1.end() ” kisaran iterator untuk “vect1”, dan “ vect2.begin() ' Dan ' vect2.end() rentang untuk 'vect2'. Kemudian, dipanggil ' leksikografis_bandingkan() ” yang membutuhkan empat argumen untuk kedua vektor.
Hasilnya akan disimpan dengan “ bool ' ketik ' hasil ” dan kembalikan true jika rentang 'vect1' secara leksikografis lebih kecil dari rentang 'vect2', dan salah jika sebaliknya. Terakhir, terapkan ' jika ” pernyataan untuk menampilkan hasil. Jika “ hasil 'benar itu berarti' vect1 'secara leksikografis' > ” daripada “vect2”. Jika tidak, kondisi else akan dijalankan:
int utama ( ) {vektor < rangkaian > vect1 = { 'Musim semi' , 'Musim panas' , 'Musim gugur' , 'Musim dingin' } ;
vektor < rangkaian > vect2 = { 'Musim semi' , 'Musim panas' } ;
menyortir ( vect1. mulai ( ) , vect1. akhir ( ) ) ;
menyortir ( vect2. mulai ( ) , vect2. akhir ( ) ) ;
// bandingkan kedua vektor menggunakan lexicographical_compare()
bool hasil = perbandingan_leksikografis (
vect1. mulai ( ) , vect1. akhir ( ) ,
vect2. mulai ( ) , vect2. akhir ( )
) ;
jika ( hasil ) {
cout << 'vect1 secara leksikografis lebih besar dari vect2' << endl ;
} kalau tidak jika ( perbandingan_leksikografis (
vect2. mulai ( ) , vect2. akhir ( ) ,
vect1. mulai ( ) , vect1. akhir ( )
) ) {
cout << 'vect1 secara leksikografis kurang dari vect2' << endl ;
} kalau tidak {
cout << 'vect1 secara leksikografis sama dengan vect2' << endl ;
}
kembali 0 ;
}
Keluaran
Itu saja! Anda telah belajar tentang “ leksikografis_bandingkan() ” berfungsi dalam C++.
Kesimpulan
Di C++, fungsi 'lexicographical_compare()' digunakan untuk mengurutkan dan mencocokkan urutan elemen dalam urutan leksikal. Algoritma pengurutan dengan metode “lexicograpgical_compare()” diimplementasikan secara luas untuk menemukan urutan relatif. Dalam tutorial ini, kami mendemonstrasikan fungsi “lexicographical_compare()” di C++.