C++ Pagbukud-bukurin Vector ng Pares

C Pagbukud Bukurin Vector Ng Pares



Nagbibigay ang C++ ng pasilidad upang ipakita ang vector ng mga pares at pag-uri-uriin ang vector ng mga pares. Mayroong isang lalagyan sa C++ na nagtataglay ng dalawang value na naka-map sa isa't isa na tinatawag na 'pair' at isang 'vector of pairs' na isang vector na naglalaman ng marami sa mga pares na ito. Ang ibig sabihin ng pag-uuri ay ayusin ang data sa pataas o pababang pagkakasunud-sunod ayon sa mga kinakailangan. Dito, malalaman natin kung paano ayusin ang vector ng mga pares sa C++ programming. Maaari naming pag-uri-uriin ang vector ng mga pares sa parehong 'pataas' at 'pababang' na mga order sa C++. Madali nating pag-uri-uriin ang vector ng mga pares sa pamamagitan ng paggamit ng 'sort()' method. Gumawa tayo ng ilang mga code dito upang pag-uri-uriin ang vector ng mga pares.

Halimbawa 1:

Simulan natin ang code sa pamamagitan ng pagsasama ng header file dito na 'bits/stdc++.h'. Pagkatapos magkaroon ng header file na ito, hindi na namin kailangang magsama ng higit pang mga header file dahil naglalaman ito ng lahat ng kinakailangang library. Pagkatapos, idinagdag namin ang 'std' namespace at tinatawag ang 'main()' function.







Ngayon, idedeklara namin ang isang 'vector ng mga pares' na pinangalanang 'my_vect' at inilalagay ang 'int' na uri ng data upang ang data na ipinasok namin sa mga pares na ito ay ang 'integer' na uri ng data. Sa ibaba nito, sinisimulan namin ang dalawang array na may mga pangalang 'my_arr1[]' at 'my_arr2[]'. Dito, sinisimulan namin ang una at pangalawang halaga ng mga pares sa mga halaga ng array na ito. Pagkatapos, ginagamit namin ang loop na 'para sa' upang ipasok ang mga halagang ito sa vector ng mga pares. Dito, ginagamit namin ang function na 'push_back()' na tumutulong sa pagpasok ng mga halaga sa dulo ng vector. Sa loob ng function na ito, inilalagay namin ang opsyon na 'make_pair' na ginagamit upang bumuo ng pares na bagay ng dalawang halaga ng 'my_arr1' at 'my_arr2'.



Pagkatapos nito, i-print namin ang vector ng mga pares sa pamamagitan ng paggamit muli ng 'para sa' loop. Dito, idinaragdag ang 'una' at 'pangalawa' na mga keyword upang makuha ang una at pangalawang halaga ng vector ng mga pares. Ito ay nagpi-print ng vector ng mga pares nang hindi nag-uuri dito. Ngayon, ginagamit namin ang function na 'sort()' para pag-uri-uriin ang vector ng mga pares. Dito, ginagamit ang mga function na 'begin()' at 'end()' habang ipinasa ang simula at dulo ng vector ng mga pares sa function na 'sort()'.



Pagkatapos pag-uri-uriin, ipi-print namin muli ang vector ng mga pares sa pamamagitan ng paggamit ng 'cout' at ilagay ang una at pangalawang keyword na may 'my_vec[i]'. Ngayon, ang pinagsunod-sunod na vector ng mga pares ay naka-print din dito.





Code 1:

#include

gamit ang namespace std;

int pangunahing ( )

{

vector < pares < ikaw, ikaw > > my_vect;

int my_arr1 [ ] = { 49 , dalawampu , labinlima , 56 } ;

int my_arr2 [ ] = { 37 , dalawampu , 90 , 55 } ;

int num = sukat ng ( my_arr1 ) / sukat ng ( my_arr1 [ 0 ] ) ;

para sa ( int i = 0 ; i < kung i++ )

my_vect.push_back ( gumawa_pares ( my_arr1 [ i ] ,my_arr2 [ i ] ) ) ;

cout << 'Bago pag-uri-uriin ang vector ng mga pares: ' << endl;

para sa ( int i = 0 ; i < kung i++ )

{

cout << my_vect [ i ] .una << ''

<< my_vect [ i ] .pangalawa << endl;

}

uri ( my_vect.magsimula ( ) , my_vect.end ( ) ) ;

cout << ' \n Pagkatapos pag-uri-uriin ang vector ng mga pares: ' << endl ;

para sa ( int i = 0 ; i < kung i++ )

{

cout << my_vect [ i ] .una << ''

<< my_vect [ i ] .pangalawa << endl;

}

bumalik 0 ;

}



Output:

Ang vector ng mga pares bago ang pag-uuri ay unang ipinapakita. Pagkatapos, inilalapat namin ang pamamaraan ng pag-uuri sa vector na ito ng mga pares. Pagkatapos, ang pinagsunod-sunod na vector ng mga pares ay ipinapakita din dito. Makikita natin na ang vector ng mga pares ay pinagsunod-sunod sa pataas na pagkakasunud-sunod batay sa unang elemento ng pares.

Halimbawa 2:

Sa halimbawang ito, gumagawa na kami ngayon ng 'vector of pairs' na tinatawag na 'vector_1' at itinalaga ang 'int' na uri ng data na nangangahulugang ang impormasyong ipinasok namin sa mga pares na ito ay nasa 'integer' na uri ng data. Dalawang array na may mga pangalan na 'first_arr[]' at 'second_arr[]' ay sinisimulan sa sumusunod. Dito, sinisimulan namin ang mga value ng array na ito para sa mga value ng una at pangalawang pares.

Susunod, ipinasok namin ang mga halagang ito sa vector ng mga pares gamit ang 'para' na loop. Ang opsyon na 'make_pair', na ginagamit upang bumuo ng pares na bagay ng dalawang value mula sa array na 'first_arr[]' at 'second_arr[]', ay inilalagay sa loob ng 'push_back()' na paraan na tumutulong na ipasok ang mga item sa dulo ng vector.

Susunod, ginagamit namin ang loop na 'para sa' muli upang i-output ang vector ng mga pares. Upang makuha ang una at pangalawang halaga ng vector ng mga pares, ipinapasok ang 'una' at 'pangalawa' na mga keyword. Inilalabas nito ang pares na vector nang walang anumang pag-uuri sa puntong ito. Inuuri na namin ngayon ang 'vector ng mga pares' sa pamamagitan ng paggamit ng function na 'sort()' sa pababang pagkakasunud-sunod. Sa function na ito, inilalagay namin ang mga function na 'rbegin()' at 'rend()' upang baligtarin nito ang pag-uuri at magsimula sa dulo ng mga value ng pares. Inaayos nito ang mga ito sa pababang pagkakasunud-sunod.

Kasunod ng pag-uuri, ginagamit namin ang 'cout' upang i-output ang vector ng mga pares pagkatapos gamitin muli ang 'para sa' loop, na ipinapasok ang una at pangalawang keyword na may 'vector_1[i]' sa 'cout'. Dito naka-print din ang pinagsunod-sunod na vector ng mga pairing.

Code 2:

#include

gamit ang namespace std;

int pangunahing ( )

{

vector < pares < ikaw, ikaw > > vector_1;

int first_arr [ ] = { 77 , 29 , 97 , labinlima } ;

int second_arr [ ] = { 35 , 89 , 64 , 25 } ;

int s = laki ng ( first_arr ) / sukat ng ( first_arr [ 0 ] ) ;

para sa ( int i = 0 ; i < s; i++ )

vector_1.push_back ( gumawa_pares ( first_arr [ i ] , second_arr [ i ] ) ) ;

cout << 'Bago Pag-uri-uriin:' << endl;

para sa ( int i = 0 ; i < s; i++ ) {

cout << vector_1 [ i ] .una << ' ' << vector_1 [ i ] .pangalawa

<< endl;

}

uri ( vector_1.rbegin ( ) , vector_1.rend ( ) ) ;

cout << endl << 'Pagkatapos ayusin:' << endl;

para sa ( int i = 0 ; i < s; i++ ) {

cout << vector_1 [ i ] .una << ' ' << vector_1 [ i ] .pangalawa

<< endl;

}

bumalik 0 ;

}

Output:

Ang pre-sort vector ng mga pares ay unang ipinapakita dito, na sinusundan ng mga pairs' sorted vector na ipinapakita din dito pagkatapos na mailapat dito ang proseso ng pag-uuri. Gaya ng nakikita natin, tinutukoy ng paunang elemento ng bawat pares kung paano pinagbubukod-bukod ang vector ng mga pares sa pababang pagkakasunud-sunod.

Halimbawa 3:

Dito, lumikha kami ng isang function ng uri ng 'bool' na pinangalanang 'sortBySecElement' upang ayusin ang mga numero ng vector. Sa function na ito, naglalagay kami ng kundisyon, ang 'value1.second < value2.second', na naghahambing sa pangalawang value ng parehong vectors ng mga pares at ibinabalik ang mga numero.

Pagkatapos, ang 'pangunahing()' ay ginagamit sa mga sumusunod kung saan ginagawa namin ang vector ng mga pares. Ang sumusunod ay nagpapasimula ng dalawang array na pinangalanang 'new_array1[]' at 'new_aray2[]'. Dito, ipinapasok namin ang mga halaga ng mga pares sa mga array na ito. Susunod, ginagamit namin ang loop na 'para sa' upang ipasok ang mga halagang ito sa vector ng mga pares. Sa loob ng 'push_back()' na paraan, na tumutulong sa pagpasok ng mga item sa dulo ng vector, ay ang 'make_pair' na opsyon na ginagamit upang lumikha ng pares na object ng dalawang value mula sa 'new_array1[]' at 'new_array2[ ]” mga array.

Pagkatapos ay i-output namin ang vector ng mga pares gamit ang isa pang 'for' loop. Ang 'una' at 'pangalawa' na mga keyword ay ipinasok upang makuha ang una at pangalawang halaga ng vector ng mga pares. Walang pag-uuri na ginagawa sa yugtong ito, at ang pares na vector ay nai-output. Ginagamit na namin ngayon ang function na 'sort()' para pag-uri-uriin ito. Ang simula at dulo ng vector ng mga pares ay ibinibigay sa 'sort()' function sa kasong ito sa pamamagitan ng paggamit ng 'begin()' at 'end()' functions. Inilalagay din namin ang function na 'sortBySecElement' na dati naming nilikha sa loob ng function na 'sort()' kung saan itinakda namin ang pattern ng pag-uuri ng vector ng mga pares mula sa pangalawang elemento ng vector sa pataas na pagkakasunud-sunod.

Ngayon, muli naming ginagamit ang 'para sa' loop. Pagkatapos, ang una at pangalawang keyword ay ipinapasok ng 'new_vec[i]' sa 'cout' upang makagawa muli ng vector ng mga pares pagkatapos pag-uri-uriin. Dito rin naka-print ang pinagsunod-sunod na vector ng mga pares sa pataas na pagkakasunud-sunod.

Code 3:

#include

gamit ang namespace std;

bool sortBySecElement ( const pares < ikaw, ikaw > at halaga1,

const pares < ikaw, ikaw > at halaga2 )

{

bumalik ( halaga1.pangalawa < halaga2.pangalawa ) ;

}

int pangunahing ( )

{

vector < pares < ikaw, ikaw > > bagong bagay

int new_arr1 [ ] = { 3. 4 , 29 , 65 , 48 } ;

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

int value = sizeof ( new_arr1 ) / sukat ng ( new_arr1 [ 0 ] ) ;

para sa ( int i = 0 ; i < halaga; i++ )

new_vec.push_back ( gumawa_pares ( new_arr1 [ i ] ,new_arr2 [ i ] ) ) ;

cout << 'Bago Pag-uri-uriin:' << endl ;

para sa ( int i = 0 ; i < halaga; i++ )

{

cout << bagong bagay [ i ] .una << ' '

<< bagong bagay [ i ] .pangalawa << endl;

}

uri ( new_vec.begin ( ) , new_vec.end ( ) , sortBySecElement ) ;

cout << endl << 'Pagkatapos ayusin:' << endl ;

para sa ( int i = 0 ; i < halaga; i++ )

{

cout << bagong bagay [ i ] .una << ' '

<< bagong bagay [ i ] .pangalawa << endl;

}

bumalik 0 ;

}

Output:

Dito, ipinapakita ang pinagsunod-sunod na vector ng mga pares, at ginagawa ang pag-uuri ayon sa pangalawang halaga ng mga pares. Ang pangalawang elemento ng mga pares ay naka-imbak sa pataas na pagkakasunud-sunod at ipinapakita dito.

Konklusyon

Ang gabay na ito ay tungkol sa 'sort vector of pairs' sa C++. Ginalugad namin ang 'vector ng mga pares' nang walang pag-uuri pati na rin ang pag-uuri ng 'vector ng mga pares' sa pataas at pababang pagkakasunud-sunod. Inilarawan namin ito sa mga halimbawa kung saan pinag-uuri namin ang 'vector ng mga pares' ayon sa una at pangalawang numero ng mga pares na ito sa C++ programming. Nalaman namin na ang pamamaraang 'sort()' ay nakakatulong sa paggawa ng pag-uuri na ito.