본문 바로가기
[C++] Data Structure & Algorithm/STL

[STL] 범용 수치 알고리즘(accumulate, inner_product)

by song.ift 2023. 5. 12.

accumulate

지정한 구간에 속한 값들을 모든 더한 값을 계산한다. 기본적으로 더하기 연산만 하지만 조건자를 사요하면 더하기 이외의 연산도 할 수 있다. accumulate를 사용하기 위해서는 앞서 소개한 알고리즘과 다르게 <numeric>헤더 파일을 포함해야 한다.

 

<vector에 있는 값들을 계산>

 

<조건자를 사용한 accumulate>

 

inner_product

두 입력 시퀀스의 내적을 계산하는 알고리즘으로 기본적으로는 +와 *을 사용한다. 두 입력 시퀀스의 값은 위치의 값을 서로 곱한 값을 모두 더한 것이 최종계산 값이 된다. 주의해야 할 것은 두 입력 시퀀스의 구간 중 두 번째 시퀀스는 첫 번째 시퀀스 구간 보다 크거나 같아야 한다. 즉 첫 번째 시퀀스 구간의 데이터는 5개가 있는데 두 번째 시퀀스에 있는 데이터가 5개 보다 작으면 안된다.

<inner_product를 사용하여 내적 계산>

'[C++] Data Structure & Algorithm > STL' 카테고리의 다른 글

[STL] list #1  (0) 2023.05.15
[STL] vector #4  (0) 2023.05.15
[STL] vector #3  (0) 2023.05.15
[STL] vector #2  (0) 2023.05.15
[STL] vector #1  (0) 2023.05.15

댓글