logo

C++ פונקציית אלגוריתם שווה()

הפונקציה C++ אלגוריתם equal() משווה את האלמנטים בשני המכלים ומחזירה ערך אמיתי אם כל האלמנטים בשני הקונטיינרים נמצאו מתאימים. הטווח הראשון הוא מ-[first1,last1) והשני מתחיל מ-first2.

תחביר

 template bool equal(InputIterator1 first1, InputIterator1 last1,InputIterator2 first2); template bool equal(InputIterator1 first1, InputIterator1 last1, InputIterator2 first1, BinaryPredicate pred); 

פָּרָמֶטֶר

ראשון1 : זהו איטרטור קלט לאלמנט הראשון של ה-[first1, last1).

אחרון1 : זהו איטרטור קלט לרכיב האחרון של ה-[first1, last1).

אופרטור python //

ראשון2 : זהו איטרטור קלט לאלמנט הראשון של ה-[first2, last2).

css משנה גודל תמונה

לפני : זוהי פונקציה בינארית שמקבלת שני אלמנטים כארגומנטים ומבצעת את המשימה שתוכננה על ידי הפונקציה.

ערך החזרה

הפונקציה מחזירה את הערך true אם כל האלמנטים בשני הקונטיינרים תואמים, אחרת היא מחזירה false.

דוגמה 1

 #include #include #include using namespace std; bool newpredicate(int m, int n) { return(m==n); } int main() { int newints[]={20,40,60,80,100}; std::vector newvector(newints, newints+5); if(std::equal(newvector.begin(),newvector.end(),newints)) std::cout&lt;<'both the containers have matching elements.
'; else std::cout<<'both difference newvector[3]="81;" if(std::equal(newvector.begin(),newvector.end(),newints,newpredicate)) equal containers.
'; do not elements. 
'; return 0; } < pre> <p> <strong>Output:</strong> </p> <pre> Both the containers have matching elements. Both the containers do not have equal elements. </pre> <h2>Example 2</h2> <pre> #include using namespace std; int main() { int u1[]={10,20,30,40,50}; std::vector vec_1(u1,u1+sizeof(u1)/sizeof(int)); std::cout&lt;<'the vector consists of:'; for(unsigned int k="0;" k<vec_1.size(); k++) std::cout<<' '<<vec_1[k]; std::cout<<'
'; if(std::equal(vec_1.begin(),vec_1.end(),u1)) std::cout<<'both the containers have equal elements.
'; else cout<<'both different elements.'; } < pre> <p> <strong>Output:</strong> </p> <pre> The vector consists of: 10, 20,30,40,50 Both the containers have equal elements. </pre> <h2>Complexity</h2> <p>The function has linear complexity from the first1 element to the last1 element.</p> <h2>Data races</h2> <p>Objects in both ranges are accessed.</p> <h2>Exceptions</h2> <p>The function throws an exception if any of the argument throws one. </p> <br></'the></pre></'both>

דוגמה 2

 #include using namespace std; int main() { int u1[]={10,20,30,40,50}; std::vector vec_1(u1,u1+sizeof(u1)/sizeof(int)); std::cout&lt;<\'the vector consists of:\'; for(unsigned int k="0;" k<vec_1.size(); k++) std::cout<<\' \'<<vec_1[k]; std::cout<<\'
\'; if(std::equal(vec_1.begin(),vec_1.end(),u1)) std::cout<<\'both the containers have equal elements.
\'; else cout<<\'both different elements.\'; } < pre> <p> <strong>Output:</strong> </p> <pre> The vector consists of: 10, 20,30,40,50 Both the containers have equal elements. </pre> <h2>Complexity</h2> <p>The function has linear complexity from the first1 element to the last1 element.</p> <h2>Data races</h2> <p>Objects in both ranges are accessed.</p> <h2>Exceptions</h2> <p>The function throws an exception if any of the argument throws one. </p> <br></\'the>

מוּרכָּבוּת

לפונקציה יש מורכבות לינארית מהאלמנט first1 לאלמנט last1.

מירוצי נתונים

יש גישה לאובייקטים בשני הטווחים.

פיתון גמלים

חריגים

הפונקציה זורקת חריג אם אחד מהארגומנטים זורק אחד.