logo

C++ 알고리즘 함수 equal()

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)의 마지막 요소에 대한 입력 반복자입니다.

4분기

처음 2 : [first2, last2)의 첫 번째 요소에 대한 입력 반복자입니다.

자바 트림 문자열

~ 전에 : 두 요소를 인수로 받아들이고 함수가 설계한 작업을 수행하는 이진 함수입니다.

반환 값

이 함수는 두 컨테이너의 모든 요소가 일치하면 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>

복잡성

이 함수는 첫 번째1 요소부터 마지막1 요소까지 선형 복잡도를 갖습니다.

데이터 경쟁

두 범위 모두의 개체에 액세스됩니다.

C의 문자열

예외

인수 중 하나라도 예외가 발생하면 함수는 예외를 발생시킵니다.