I denne omfattende guide vil vi demonstrere funktionen 'lexicography_compare()' i C++ med programmet.
Hvad er funktionen 'lexicography_compare()' i C++
I C++ er funktionen 'lexicograpfical_compare()' en meget effektiv operation til at sammenligne og sortere elementer i en sekvens (leksikografisk rækkefølge). Det giver mulighed for at bestemme den respektive rækkefølge, som er resultatet af sammenligning af sekvenser, såsom områder og strenge. Denne funktion er tilgængelig i C++ ved at bruge '
Syntaks
Her er syntaksen for funktionen 'lexicography_compare()' i C++:
skabelon < klasse InputIter1, klasse InputIter2 >
bool leksikografisk_sammenlign ( InputIter1 first1, InputIter1 last1, InputIter2 first2, InputIter2 last2 ) ;
I henhold til den ovenfor angivne kode, ' leksikografisk_sammenlign() '-funktionen accepterer to par af områder, ' først 1 ' og ' sidste 1 ' input iteratorer for det første område og ' første 2 ' og ' sidste 2 ” input iteratorer for rækkevidden sekund. Det matcher begge områdeelementer i leksikografisk rækkefølge.
Returtype: Det returnerer den boolske værdi (sand eller falsk). Det vil returnere sandt, når det første område er leksikografisk mindre end det andet område ellers returnerer falsk.
Undtagelser: Hvis der er en fejl fundet under sammenligningen, vil det give en undtagelse.
Sådan sorteres vektorer ved hjælp af lexicographical_compare() Funktion C++
Funktionen 'lexicography_compare()' bruges ofte i sorteringsteknikker for at finde ud af elementets rækkefølge. Den matcher den respektive rækkefølge af elementerne, indtil rækken er færdig.
Eksempel på lexicograpical_compare() Funktion Sorter og sammenlign strengvektorerne
Lad os se det medfølgende eksempel, der viser ' sortere() ' metode med ' leksikografisk_sammenlign() ”:
#include#inkluder
#include
ved brug af navneområde std ;
Her:
- “
” bruges til input og output operationer.
“
- “
” header-fil bruges til at få adgang til “sort()”-metoden for funktionen “lexicography_compare()”. - “ bruger navneområde std ” omtales som et direktiv, der bruger alle navnene fra navneområdet uden eksplicit at nævne præfikset “std”.
Dernæst inde i ' hoved() 'funktion, initialiserede vi to vektorer' vect1 ' og ' vect2 ” med samme streng. Brug derefter ' sortere() ' metode til at sortere elementerne i leksikografisk rækkefølge af begge vektorer med ' vect1.begin() ' og ' vector1.end() ' iteratorområde for 'vect1' og ' vect2.begin() ' og ' vect2.end() ' område for 'vect2'. Derefter påberåbte sig ' leksikografisk_sammenlign() ” funktion, der tager fire argumenter for begge vektorer.
Resultaterne gemmes med ' bool ' indtast ' resultat variabel og returnerer sand, hvis 'vect1'-området er leksikografisk mindre end 'vect2'-området, og ellers falsk. Til sidst skal du anvende ' hvis ”-udsagn for at vise resultaterne. Hvis ' resultat ' er sandt, det betyder, at 'vect1' er leksikografisk ' > ” end “vect2”. Ellers vil den anden betingelse blive udført:
int vigtigste ( ) {vektor < snor > vect1 = { 'Forår' , 'Sommer' , 'Efterår' , 'Vinter' } ;
vektor < snor > vect2 = { 'Forår' , 'Sommer' } ;
sortere ( vect1. begynde ( ) , vect1. ende ( ) ) ;
sortere ( vect2. begynde ( ) , vect2. ende ( ) ) ;
// sammenlign begge vektorer ved hjælp af leksikografisk_sammenlign()
bool resultat = leksikografisk_sammenlign (
vect1. begynde ( ) , vect1. ende ( ) ,
vect2. begynde ( ) , vect2. ende ( )
) ;
hvis ( resultat ) {
cout << 'vect1 er leksikografisk større end vect2' << endl ;
} andet hvis ( leksikografisk_sammenlign (
vect2. begynde ( ) , vect2. ende ( ) ,
vect1. begynde ( ) , vect1. ende ( )
) ) {
cout << 'vect1 er leksikografisk mindre end vect2' << endl ;
} andet {
cout << 'vect1 er leksikografisk lig med vect2' << endl ;
}
Vend tilbage 0 ;
}
Produktion
Det er alt! Du har lært om ' leksikografisk_sammenlign() ”-funktion i C++.
Konklusion
I C++ bruges funktionen 'lexicography_compare()' til at sortere og matche rækkefølgen af elementer i leksikalsk rækkefølge. Sorteringsalgoritmen med metoden 'lexicograpgical_compare()' er bredt implementeret for at finde den relative rækkefølge. I denne tutorial demonstrerede vi funktionen 'lexicographical_compare()' i C++.