본문 바로가기
반응형

알고리즘/기본10

[C++/STL] 페어(Pair) 페어(Pair) 페어(Pair) 란? - 2개의 데이터를 저장할 수 있는 변수이다. - sort등의 비교 연산에서는 1순위로 first, 2순위로 second를 기준으로 판단한다. 페어 사용 방법 - 페어 선언 // 헤더 선언 필요 #include // int, string 자료형을 저장하는 페어 선언 pair p; - 원소 저장 // 페어에 데이터 저장 시 make_pair를 이용한다. p = make_pair(5,"test"); - 원소 조회 // 첫 번째 인자 접근 p.first; // 두 번째 인자 접근 p.second; - vector등의 자료구조와 연계하여 사용 가능하다. vector vp; vp.push_back(make_pair(4, "test4"); 2020. 6. 7.
[C++/STL] 덱(Deque) 덱(Deque) 덱(Deque) 이란? - 맨 앞과 맨 뒤에 원소를 추가할 수 있는 자료구조이다. - 동적 배열 형태로 선언되어 있다. - 임의의 위치의 원소 접근이나 앞, 뒤에 원소 추가 시 O(1)을 보장한다. 덱 사용 방법 - 덱 선언 // 헤더 선언 필요 #include // int 자료형을 저장하는 덱 선언 deque dq; - 원소 추가 // 맨 뒤 원소 n 추가 dq.push_back(n); // 맨 앞 원소 n 추가 dq.push_front(n); // 맨 뒤 원소 제거 dq.pop_back(); // 맨 앞 원소 제거 dq.pop_front(); - 나머지 사용법은 벡터(Vector)와 동일하다. 2020/06/07 - [알고리즘/기본] - 알고리즘을 위한 C++ STL - 벡터(Vect.. 2020. 6. 7.
[C++/STL] 큐(Queue), 우선순위 큐(Priority Queue) 1. 큐(Queue) 큐(Queue) 란? - FIFO(First In Fisrt Out) 자료구조 - 가장 먼저 넣었던 데이터를 사용할 때 이용한다. 큐 사용 방법 - 큐 선언 // 헤더 선언 필요 #include // int 자료형을 저장하는 큐 선언 queue q; - 원소 추가 // 원소 n 삽입 q.push(n); - 맨 처음 원소 제거 // 맨 처음 원소 제거 q.pop(); - 맨 처음 원소 조회 // 맨 처음 원소 조회 q.front(); - 기타 // 큐이 비어있는지 확인 // 원소가 없으면 true, 원소가 있으면 false 반환 q.empty(); // 큐의 크기(원소의 개수) 조회 q.size(); 2. 우선순위 큐(Priority Queue) 우선순위 큐(Priority Queue.. 2020. 6. 7.
[C++/STL] 스택(Stack) 스택(Stack) 이란? - LIFO(Last In First Out) 자료구조 - 가장 최근에 넣었던 데이터를 사용할 때 이용한다. 스택 사용 방법 - 스택 선언 // 헤더 선언 필요 #include // int 자료형을 저장하는 스택 선언 stack st; - 원소 추가 // 원소 n 삽입 st.push(n); - 맨 위 원소 제거 // 맨 위 원소 제거 st.pop(); - 맨 위 원소 조회 // 맨 위 원소 조회 st.top(); - 기타 // 스택이 비있는지 확인. // 비어있으면 true, 원소가 있으면 false 반환 st.empty(); // 스택의 크기(원소의 개수) 조회 st.size(); 2020. 6. 7.
반응형