07
30

1. .assign(first, last)

first 부터 last 전 까지의 원소들을 벡터에 대입한다. 이전에 있었던 원소들은 모두 삭제한다.

//{1,2,3,4,5} 1, 3 -> {2,3,4}
vector<int> solution(vector<int> numbers, int num1, int num2) {
   numbers.assign(begin(numbers)+num1, begin(numbers)+num2+1);
    return numbers;
}

2. .insert

  1.  .insert(iter, value): iter 위치에 value 삽입하고 위치 반환
  2.  .insert(iter, size, value): iter 위치에 value를 size 개수만큼 삽입
  3.  .insert(iter, first, last): iter 위치에 first 부터 last 전까지 값을 삽입
#include <iostream>
#include <vector>
using namespace std;

int main() {
  vector<int> vec(1,2);

  auto it = vec.insert(vec.begin(), 0); //벡터의 처음부분에 원소 0을 넣는다
  vec.insert(vec.begin(), 2, 3); //벡터의 처음부분에 3을 2개 넣는다
  
  vector<int> tempvec(10,11,12);
  vec.insert(vec.begin(), tempvec.begin(), tempvec.end()); //벡터의 처음부분에 tempvec의 처음부터 끝까지 넣는다
 
 return 0;
 }

'C++ > 자료노트' 카테고리의 다른 글

<numeric>  (1) 2023.10.31
기타 유용한 함수 등등  (0) 2023.08.08
<algorithm>  (0) 2023.07.30
<string>  (0) 2023.07.30
COMMENT