Wektor sortowania par w języku C++

Wektor Sortowania Par W Jezyku C



C++ zapewnia możliwość wyświetlania wektorów par i sortowania wektorów par. W C++ istnieje kontener, który przechowuje dwie mapowane na siebie wartości zwane „parą” i „wektorem par”, który jest wektorem zawierającym wiele takich par. Sortowanie oznacza uporządkowanie danych w kolejności rosnącej lub malejącej, zgodnie z wymaganiami. Tutaj dowiemy się, jak sortować wektor par w programowaniu w C++. W C++ możemy sortować wektory par zarówno w kolejności rosnącej, jak i malejącej. Możemy łatwo posortować wektor par, korzystając z metody „sort()”. Zróbmy tutaj kilka kodów, aby posortować wektor par.

Przykład 1:

Zacznijmy kod od dołączenia tutaj pliku nagłówkowego „bits/stdc++.h”. Po posiadaniu tego pliku nagłówkowego nie musimy dołączać kolejnych plików nagłówkowych, ponieważ zawiera on wszystkie niezbędne biblioteki. Następnie dodajemy przestrzeń nazw „std” i wywołujemy funkcję „main()”.







Teraz deklarujemy „wektor par” o nazwie „my_vect” i umieszczamy typ danych „int”, tak aby dane, które wprowadzamy w tych parach, były typem danych „integer”. Poniżej inicjujemy dwie tablice o nazwach „my_arr1[]” i „my_arr2[]”. Tutaj inicjujemy pierwszą i drugą wartość par tymi wartościami tablicy. Następnie za pomocą pętli „for” wprowadzamy te wartości do wektora par. Tutaj używamy funkcji „push_back()”, która pomaga we wstawieniu wartości na końcu wektora. Wewnątrz tej funkcji umieszczamy opcję „make_pair”, która służy do konstruowania obiektu pary dwóch wartości „my_arr1” i „my_arr2”.



Następnie drukujemy wektor par, ponownie wykorzystując pętlę „for”. Tutaj dodawane są słowa kluczowe „pierwszy” i „drugi”, aby uzyskać pierwszą i drugą wartość wektora par. Spowoduje to wypisanie wektora par bez sortowania. Teraz używamy funkcji „sort()” do sortowania wektora par. W tym przypadku zastosowano funkcje „begin()” i „end()”, przekazując początek i koniec wektora par do tej funkcji „sort()”.



Po posortowaniu drukujemy wektor par ponownie, korzystając z „cout” i umieszczając pierwsze i drugie słowo kluczowe z „my_vec[i]”. Teraz posortowany wektor par jest również tutaj drukowany.





Kod 1:

#include

używając przestrzeni nazw std;

int główny ( )

{

wektor < para < ty ty > > mój_vect;

int mój_arr1 [ ] = { 49 , 20 , piętnaście , 56 } ;

int mój_arr2 [ ] = { 37 , 20 , 90 , 55 } ;

int liczba = rozmiar ( mój_arr1 ) / rozmiar ( mój_arr1 [ 0 ] ) ;

Do ( wew I = 0 ; I < czy ja++ )

my_vect.push_back ( make_pair ( mój_arr1 [ I ] ,mój_arr2 [ I ] ) ) ;

cout << „Przed sortowaniem wektora par:” << koniec;

Do ( wew I = 0 ; I < czy ja++ )

{

cout << mój_wektor [ I ] .Pierwszy << ' '

<< mój_wektor [ I ] .drugi << koniec;

}

sortować ( mój_vect.begin ( ) , mój_vect.end ( ) ) ;

cout << ' \N Po posortowaniu wektora par: ' << koniec;

Do ( wew I = 0 ; I < czy ja++ )

{

cout << mój_wektor [ I ] .Pierwszy << ' '

<< mój_wektor [ I ] .drugi << koniec;

}

powrót 0 ;

}



Wyjście:

Jako pierwszy wyświetlany jest wektor par przed sortowaniem. Następnie stosujemy technikę sortowania na tym wektorze par. Następnie wyświetlany jest tutaj również posortowany wektor par. Widzimy, że wektor par jest posortowany rosnąco w oparciu o pierwszy element pary.

Przykład 2:

W tym przykładzie tworzymy teraz „wektor par” o nazwie „vector_1” i przypisujemy typ danych „int”, co oznacza, że ​​informacje, które wprowadzamy w tych parach, są typu danych „integer”. Poniżej inicjalizowane są dwie tablice o nazwach „pierwsza_arr[]” i „druga_tablica[]”. Tutaj inicjujemy wartości tych tablic dla wartości pierwszej i drugiej pary.

Następnie wartości te wprowadzamy do wektora par za pomocą pętli „for”. Opcja „make_pair”, która służy do generowania obiektu pary dwóch wartości z tablic „first_arr[]” i „drugi_arr[]”, jest umieszczona wewnątrz metody „push_back()”, która pomaga wstawiać elementy po koniec wektora.

Następnie ponownie używamy pętli „for”, aby wyprowadzić wektor par. Aby uzyskać pierwszą i drugą wartość wektora par, wstawiane są słowa kluczowe „pierwszy” i „drugi”. Spowoduje to wyświetlenie wektora pary bez żadnego sortowania w tym momencie. Teraz sortujemy „wektor par” za pomocą funkcji „sort()” w kolejności malejącej. W tej funkcji umieszczamy funkcje „rbegin()” i „rend()”, aby odwrócić sortowanie i zacząć od końca wartości pary. Układa je w kolejności malejącej.

Po sortowaniu używamy „cout” do wyprowadzenia wektora par po ponownym użyciu pętli „for” i wstawieniu pierwszego i drugiego słowa kluczowego z „vector_1[i]” w „cout”. W tym miejscu drukowany jest również posortowany wektor par.

Kod 2:

#include

używając przestrzeni nazw std;

int główny ( )

{

wektor < para < ty ty > > wektor_1;

int pierwszy_arr [ ] = { 77 , 29 , 97 , piętnaście } ;

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

int s = rozmiar ( pierwszy_arr ) / rozmiar ( pierwszy_arr [ 0 ] ) ;

Do ( int ja = 0 ; I < S; ja++ )

wektor_1.push_back ( make_pair ( pierwszy_arr [ I ] , drugi_arr [ I ] ) ) ;

cout << „Przed sortowaniem:” << koniec;

Do ( int ja = 0 ; I < S; ja++ ) {

cout << wektor_1 [ I ] .Pierwszy << ' ' << wektor_1 [ I ] .drugi

<< koniec;

}

sortować ( wektor_1.rrozpocznij ( ) , wektor_1.rend ( ) ) ;

cout << koniec << „Po sortowaniu:” << koniec;

Do ( int ja = 0 ; I < S; ja++ ) {

cout << wektor_1 [ I ] .Pierwszy << ' ' << wektor_1 [ I ] .drugi

<< koniec;

}

powrót 0 ;

}

Wyjście:

Najpierw pokazany jest tutaj wektor wstępnego sortowania par, a następnie posortowany wektor par, który również jest tutaj pokazany po zastosowaniu do niego procesu sortowania. Jak widzimy, początkowy element każdej pary określa sposób sortowania wektora par w kolejności malejącej.

Przykład 3:

Tutaj tworzymy funkcję typu „bool” o nazwie „sortBySecElement”, która sortuje liczby wektorów. W tej funkcji umieszczamy warunek „wartość 1.sekunda < wartość2.sekunda”, który porównuje drugie wartości obu wektorów par i zwraca liczby.

Następnie wywoływana jest funkcja „main()”, w której tworzymy wektor par. Poniższe inicjuje dwie tablice o nazwach „new_array1[]” i „new_aray2[]”. Tutaj wstawiamy wartości par w tych tablicach. Następnie używamy pętli „for”, aby wprowadzić te wartości do wektora par. Wewnątrz metody „push_back()”, która pomaga wstawiać elementy na końcu wektora, znajduje się opcja „make_pair”, która służy do tworzenia obiektu pary dwóch wartości z „new_array1[]” i „new_array2[ ]” tablice.

Następnie wyprowadzamy wektor par za pomocą kolejnej pętli „for”. Wstawia się słowa kluczowe „pierwszy” i „drugi”, aby uzyskać pierwszą i drugą wartość wektora par. Na tym etapie nie jest wykonywane żadne sortowanie i wyprowadzany jest wektor pary. Do sortowania używamy teraz funkcji „sort()”. Początek i koniec wektora par są w tym przypadku dostarczane do funkcji „sort()” za pomocą funkcji „begin()” i „end()”. Wewnątrz tej funkcji „sort()” umieszczamy również utworzoną wcześniej funkcję „sortBySecElement”, w której ustalamy wzór sortowania wektora par z drugiego elementu wektora w kolejności rosnącej.

Teraz ponownie korzystamy z pętli „for”. Następnie wstawiane są pierwsze i drugie słowa kluczowe z „new_vec[i]” w „cout”, aby po sortowaniu ponownie wygenerować wektor par. W tym miejscu drukowany jest teraz posortowany wektor par w kolejności rosnącej.

Kod 3:

#include

używając przestrzeni nazw std;

bool sortBySecElement ( stała para < ty ty > & wartość1,

stała para < ty ty > & wartość2 )

{

powrót ( wartość1.sekunda < wartość2.sekunda ) ;

}

int główny ( )

{

wektor < para < ty ty > > Nowa rzecz

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

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

int wartość = rozmiar ( nowy_arr1 ) / rozmiar ( nowy_arr1 [ 0 ] ) ;

Do ( wew I = 0 ; I < wartość; ja++ )

nowy_vec.push_back ( make_pair ( nowy_arr1 [ I ] ,nowy_arr2 [ I ] ) ) ;

cout << „Przed sortowaniem:” << koniec;

Do ( wew I = 0 ; I < wartość; ja++ )

{

cout << Nowa rzecz [ I ] .Pierwszy << ' '

<< Nowa rzecz [ I ] .drugi << koniec;

}

sortować ( nowy_vec.begin ( ) , nowy_vec.end ( ) , sortBySecElement ) ;

cout << koniec << „Po sortowaniu:” << koniec;

Do ( wew I = 0 ; I < wartość; ja++ )

{

cout << Nowa rzecz [ I ] .Pierwszy << ' '

<< Nowa rzecz [ I ] .drugi << koniec;

}

powrót 0 ;

}

Wyjście:

Tutaj wyświetlany jest posortowany wektor par, a sortowanie odbywa się według drugich wartości par. Drugi element par jest przechowywany w kolejności rosnącej i wyświetlany tutaj.

Wniosek

Ten przewodnik dotyczy „wektora sortowania par” w C++. Badaliśmy „wektor par” bez sortowania, a także sortowaliśmy „wektor par” w porządku rosnącym i malejącym. Zilustrowaliśmy to przykładami, w których sortujemy „wektor par” według pierwszej i drugiej liczby tych par w programowaniu w C++. Dowiedzieliśmy się, że metoda „sort()” pomaga w sortowaniu.