>  기사  >  백엔드 개발  >  C 벡터 내에서 최대값 또는 최소값을 효율적으로 찾는 방법은 무엇입니까?

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

DDD
DDD원래의
2024-10-24 18:58:021091검색

How to efficiently find the maximum or minimum value within a C   vector?

C에서 벡터의 최대값 또는 최소값을 검색하는 방법

C에서 벡터 내 최대값 또는 최소값을 찾는 것은 일반적인 작업. 배열과 벡터는 유사점을 공유하지만 이러한 값을 얻는 방법은 두 데이터 구조에서 약간 다릅니다.

벡터

벡터에서 최대값 또는 최소값을 검색하려면 다음을 수행하세요. 에서 std::max_element() 또는 std::min_element() 함수를 사용하세요. 헤더. 이 함수는 벡터의 시작과 끝 부분에 대한 반복자를 인수로 취하고 최대값 또는 최소값을 가진 요소를 가리키는 반복자를 반환합니다.

<code class="cpp">#include <vector>
#include <algorithm>

int main() {
  std::vector<int> vector = {1, 2, 3, 4, 5};

  // Getting the maximum value
  int max = *std::max_element(vector.begin(), vector.end());
  std::cout << "Maximum: " << max << std::endl;

  // Getting the minimum value
  int min = *std::min_element(vector.begin(), vector.end());
  std::cout << "Minimum: " << min << std::endl;

  // Using iterators
  std::vector<int>::iterator it_max = std::max_element(vector.begin(), vector.end());
  std::cout << "Element with maximum value: " << *it_max << std::endl;
}

배열

배열의 경우 std::max_element() 또는 std::min_element()에는 반복자가 필요하므로 직접 사용할 수 없습니다. 대신 루프를 사용하여 배열을 반복하고 최대값 또는 최소값을 수동으로 찾을 수 있습니다.

<code class="cpp">int main() {
  int array[5] = {1, 2, 3, 4, 5};

  // Getting the maximum value
  int max = array[0];
  for (int i = 1; i < 5; i++) {
    if (array[i] > max) {
      max = array[i];
    }
  }
  std::cout << "Maximum: " << max << std::endl;
}</code>

위 내용은 C 벡터 내에서 최대값 또는 최소값을 효율적으로 찾는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.