"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > C++의 벡터 내에서 최대값과 최소값을 효율적으로 찾는 방법은 무엇입니까?

C++의 벡터 내에서 최대값과 최소값을 효율적으로 찾는 방법은 무엇입니까?

2024년 11월 13일에 게시됨
검색:380

How do I efficiently find the maximum and minimum values within a vector in C  ?

C에서 벡터의 최대값 또는 최소값 찾기

C에서 벡터의 최대값 또는 최소값을 얻는 것은 간단한 작업입니다. . STL(표준 템플릿 라이브러리) 기능을 활용하면 전체 컨테이너를 반복하지 않고도 이를 효율적으로 달성할 수 있습니다.

std::max_element() 및 std::min_element()

표준 라이브러리는 일련의 값에서 최대 및 최소 요소를 찾기 위해 std::max_element() 및 std::min_element() 함수를 제공합니다. 각각. 이 함수는 한 쌍의 반복자를 인수로 사용하여 검색을 수행해야 하는 범위를 나타냅니다. 반환 값은 최대/최소 값을 가진 요소를 가리키는 반복자입니다.

Syntax:

std::max_element(iterator_begin, iterator_end);
std::min_element(iterator_begin, iterator_end);

예:

#include 
#include 

std::vector v = {1, 3, 5, 7, 9};

int max_num = *std::max_element(v.begin(), v.end());
int min_num = *std::min_element(v.begin(), v.end());

std::cout 

배열 대 벡터 사용

벡터와 배열은 모두 씨. 그러나 벡터는 동적이지만 배열은 정적입니다. 따라서 최대/최소값을 얻는 접근 방식이 약간 다릅니다.

배열의 경우 요소에 직접 액세스하고 배열을 반복하여 최대/최소값을 결정할 수 있습니다.

예:

int arr[] = {1, 3, 5, 7, 9};
int size = sizeof(arr) / sizeof(arr[0]);

int max_num = arr[0];
int min_num = arr[0];

for (int i = 1; i 

결론적으로 std::max_element() 및 std::min_element()를 사용하는 것은 다음을 찾는 편리한 방법입니다. 벡터의 최대값과 최소값. 배열의 경우 요소를 반복하여 동일한 결과를 얻을 수 있습니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3