C++ Urutkan Vektor Pasangan

C Urutkan Vektor Pasangan



C++ menyediakan fasilitas untuk menampilkan vektor pasangan dan mengurutkan vektor pasangan. Ada sebuah wadah di C++ yang menampung dua nilai yang dipetakan satu sama lain yang disebut “pasangan” dan “vektor pasangan” yang merupakan vektor yang memiliki banyak pasangan ini di dalamnya. Mengurutkan berarti menyusun data secara menaik atau menurun sesuai dengan kebutuhan. Disini kita akan mempelajari cara mengurutkan pasangan vektor pada pemrograman C++. Kita dapat mengurutkan vektor pasangan dalam urutan “ascending” dan “descending” di C++. Kita dapat dengan mudah mengurutkan pasangan vektor dengan menggunakan metode “sort()”. Mari lakukan beberapa kode di sini untuk mengurutkan pasangan vektor.

Contoh 1:

Mari kita mulai kodenya dengan memasukkan file header di sini yaitu “bits/stdc++.h”. Setelah memiliki file header ini, kita tidak perlu menyertakan lebih banyak file header karena berisi semua perpustakaan yang diperlukan. Kemudian, kita menambahkan namespace “std” dan memanggil fungsi “main()”.







Sekarang, kita mendeklarasikan “vektor pasangan” bernama “my_vect” dan memasukkan tipe data “int” sehingga data yang kita masukkan pada pasangan tersebut adalah tipe data “integer”. Di bawahnya, kita menginisialisasi dua array dengan nama “my_arr1[]” dan “my_arr2[]”. Di sini, kami menginisialisasi nilai pertama dan kedua pasangan dengan nilai array ini. Kemudian, kita menggunakan loop “for” untuk memasukkan nilai-nilai ini ke dalam vektor pasangan. Di sini, kami menggunakan fungsi “push_back()” yang membantu memasukkan nilai di akhir vektor. Di dalam fungsi ini, kita menempatkan opsi “make_pair” yang digunakan untuk membuat objek pasangan dari dua nilai “my_arr1” dan “my_arr2”.



Setelah ini, kita mencetak pasangan vektor dengan memanfaatkan loop “for” lagi. Di sini, kata kunci “pertama” dan “kedua” ditambahkan untuk mendapatkan nilai pertama dan kedua dari pasangan vektor. Ini mencetak vektor pasangan tanpa mengurutkannya di sini. Sekarang, kami menggunakan fungsi “sort()” untuk mengurutkan vektor pasangan. Di sini, fungsi “begin()” dan “end()” digunakan untuk meneruskan awal dan akhir vektor pasangan ke fungsi “sort()” ini.



Setelah disortir, kita cetak kembali pasangan vektor tersebut dengan memanfaatkan “cout” dan menempatkan kata kunci pertama dan kedua dengan “my_vec[i]”. Sekarang, vektor pasangan yang diurutkan juga dicetak di sini.





Kode 1:

#termasuk

menggunakan namespace std;

ke utama ( )

{

vektor < pasangan < kamu, kamu > > my_vect;

ke dalam my_arr1 [ ] = { 49 , dua puluh , limabelas , 56 } ;

ke dalam my_arr2 [ ] = { 37 , dua puluh , 90 , 55 } ;

int angka = ukuranof ( my_arr1 ) / ukuran dari ( my_arr1 [ 0 ] ) ;

untuk ( ke dalam Saya = 0 ; Saya < apakah saya++ )

my_vect.push_back ( buat_pasangan ( my_arr1 [ Saya ] ,arr2 saya [ Saya ] ) ) ;

cout << 'Sebelum mengurutkan pasangan vektor:' << akhir;

untuk ( ke dalam Saya = 0 ; Saya < apakah saya++ )

{

cout << my_vect [ Saya ] .Pertama << ' '

<< my_vect [ Saya ] .Kedua << akhir;

}

menyortir ( my_vect.mulai ( ) , my_vect.end ( ) ) ;

cout << ' \N Setelah mengurutkan vektor pasangan: ' << akhir;

untuk ( ke dalam Saya = 0 ; Saya < apakah saya++ )

{

cout << my_vect [ Saya ] .Pertama << ' '

<< my_vect [ Saya ] .Kedua << akhir;

}

kembali 0 ;

}



Keluaran:

Vektor pasangan sebelum pengurutan ditampilkan terlebih dahulu. Kemudian kita terapkan teknik pengurutan pada pasangan vektor ini. Kemudian, pasangan vektor yang diurutkan juga ditampilkan di sini. Kita dapat melihat bahwa vektor pasangan diurutkan dalam urutan menaik berdasarkan elemen pertama dari pasangan tersebut.

Contoh 2:

Dalam contoh ini, sekarang kita membuat “vektor pasangan” yang disebut “vector_1” dan menetapkan tipe data “int” yang berarti bahwa informasi yang kita masukkan dalam pasangan ini adalah tipe data “integer”. Dua array dengan nama “first_arr[]” dan “second_arr[]” diinisialisasi sebagai berikut. Di sini, kami menginisialisasi nilai array ini untuk nilai pasangan pertama dan kedua.

Selanjutnya, kita memasukkan nilai-nilai ini ke dalam vektor pasangan menggunakan loop “for”. Opsi “make_pair”, yang digunakan untuk menghasilkan objek pasangan dua nilai dari array “first_arr[]” dan “second_arr[]”, ditempatkan di dalam metode “push_back()” yang membantu memasukkan item di ujung vektor.

Selanjutnya, kita menggunakan loop “for” sekali lagi untuk menampilkan vektor pasangan. Untuk mendapatkan nilai pertama dan kedua dari pasangan vektor, dimasukkan kata kunci “pertama” dan “kedua”. Ini menghasilkan vektor pasangan tanpa penyortiran apa pun pada saat ini. Sekarang kita mengurutkan “vektor pasangan” dengan menggunakan fungsi “sort()” dalam urutan menurun. Dalam fungsi ini, kita menempatkan fungsi “rbegin()” dan “rend()” sehingga akan membalik pengurutan dan memulai dari akhir nilai pasangan. Ini mengaturnya dalam urutan menurun.

Setelah pengurutan, kita menggunakan “cout” untuk menampilkan pasangan vektor setelah menggunakan loop “for” sekali lagi, memasukkan kata kunci pertama dan kedua dengan “vector_1[i]” di “cout”. Di sinilah vektor yang diurutkan dari pasangan juga dicetak.

Kode 2:

#termasuk

menggunakan namespace std;

ke utama ( )

{

vektor < pasangan < kamu, kamu > > vektor_1;

ke dalam first_arr [ ] = { 77 , 29 , 97 , limabelas } ;

ke dalam detik_arr [ ] = { 35 , 89 , 64 , 25 } ;

int s = ukuran dari ( first_arr ) / ukuran dari ( first_arr [ 0 ] ) ;

untuk ( ke dalam saya = 0 ; Saya < S; saya++ )

vektor_1.push_back ( buat_pasangan ( first_arr [ Saya ] , detik_arr [ Saya ] ) ) ;

cout << 'Sebelum Menyortir:' << akhir;

untuk ( ke dalam saya = 0 ; Saya < S; saya++ ) {

cout << vektor_1 [ Saya ] .Pertama << ' ' << vektor_1 [ Saya ] .Kedua

<< akhir;

}

menyortir ( vektor_1.rmulai ( ) , vektor_1.rend ( ) ) ;

cout << akhir << 'Setelah menyortir:' << akhir;

untuk ( ke dalam saya = 0 ; Saya < S; saya++ ) {

cout << vektor_1 [ Saya ] .Pertama << ' ' << vektor_1 [ Saya ] .Kedua

<< akhir;

}

kembali 0 ;

}

Keluaran:

Vektor pra-urutan pasangan ditampilkan di sini terlebih dahulu, diikuti oleh vektor pasangan yang diurutkan yang juga ditampilkan di sini setelah proses penyortiran diterapkan padanya. Seperti yang bisa kita lihat, elemen awal setiap pasangan menentukan bagaimana vektor pasangan diurutkan dalam urutan menurun.

Contoh 3:

Di sini, kita membuat fungsi bertipe “bool” bernama “sortBySecElement” untuk mengurutkan bilangan vektor. Dalam fungsi ini, kita menempatkan kondisi, “nilai1.detik < nilai2.detik”, yang membandingkan nilai kedua dari kedua pasangan vektor dan mengembalikan angkanya.

Kemudian, 'main()' dipanggil berikut ini di mana kita membuat vektor pasangan. Berikut ini inisialisasi dua array bernama “new_array1[]” dan “new_aray2[]”. Di sini, kami memasukkan nilai pasangan ke dalam array ini. Selanjutnya, kita menggunakan loop “for” untuk memasukkan nilai-nilai ini ke dalam vektor pasangan. Di dalam metode “push_back()”, yang membantu memasukkan item di akhir vektor, terdapat opsi “make_pair” yang digunakan untuk membuat objek pasangan dua nilai dari “new_array1[]” dan “new_array2[ ]” array.

Kami kemudian mengeluarkan vektor pasangan menggunakan loop “for” lainnya. Kata kunci “pertama” dan “kedua” disisipkan untuk mendapatkan nilai pertama dan kedua dari pasangan vektor. Tidak ada penyortiran yang dilakukan pada tahap ini, dan vektor pasangan dikeluarkan. Kami sekarang menggunakan fungsi “sort()” untuk mengurutkannya. Awal dan akhir vektor pasangan disuplai ke fungsi “sort()” dalam hal ini melalui penggunaan fungsi “begin()” dan “end()”. Kita juga menempatkan fungsi “sortBySecElement” yang sebelumnya kita buat di dalam fungsi “sort()” ini di mana kita mengatur pola pengurutan vektor pasangan dari elemen kedua vektor dalam urutan menaik.

Sekarang, kita menggunakan loop “for” lagi. Kemudian, kata kunci pertama dan kedua disisipkan dengan “new_vec[i]” pada “cout” untuk menghasilkan pasangan vektor lagi setelah diurutkan. Di sinilah juga tempat vektor yang diurutkan dari pasangan dalam urutan menaik sekarang dicetak.

Kode 3:

#termasuk

menggunakan namespace std;

bool sortBySecElement ( pasangan konstan < kamu, kamu > & nilai1,

pasangan konstan < kamu, kamu > & nilai2 )

{

kembali ( nilai1.detik < nilai2.detik ) ;

}

ke utama ( )

{

vektor < pasangan < kamu, kamu > > hal baru

ke dalam new_arr1 [ ] = { 3.4 , 29 , 65 , 48 } ;

ke dalam new_arr2 [ ] = { 67 , 19 , 54 , 7 } ;

nilai int = ukuranof ( baru_arr1 ) / ukuran dari ( baru_arr1 [ 0 ] ) ;

untuk ( ke dalam Saya = 0 ; Saya < nilai; saya++ )

new_vec.push_back ( buat_pasangan ( baru_arr1 [ Saya ] ,arr_baru2 [ Saya ] ) ) ;

cout << 'Sebelum Menyortir:' << akhir;

untuk ( ke dalam Saya = 0 ; Saya < nilai; saya++ )

{

cout << hal baru [ Saya ] .Pertama << ' '

<< hal baru [ Saya ] .Kedua << akhir;

}

menyortir ( new_vec.mulai ( ) , new_vec.end ( ) , sortirBySecElement ) ;

cout << akhir << 'Setelah menyortir:' << akhir;

untuk ( ke dalam Saya = 0 ; Saya < nilai; saya++ )

{

cout << hal baru [ Saya ] .Pertama << ' '

<< hal baru [ Saya ] .Kedua << akhir;

}

kembali 0 ;

}

Keluaran:

Di sini, vektor pasangan yang diurutkan ditampilkan, dan pengurutan dilakukan berdasarkan nilai kedua dari pasangan tersebut. Elemen kedua berpasangan disimpan dalam urutan menaik dan ditampilkan di sini.

Kesimpulan

Panduan ini membahas tentang 'pengurutan vektor pasangan' di C++. Kami menjelajahi “vektor pasangan” tanpa mengurutkan, serta mengurutkan “vektor pasangan” dalam urutan menaik dan menurun. Kami mengilustrasikannya dengan contoh di mana kami mengurutkan “vektor pasangan” berdasarkan angka pertama dan kedua dari pasangan ini dalam pemrograman C++. Kami mempelajari bahwa metode “sort()” membantu dalam melakukan penyortiran ini.