본문 바로가기

알고리즘 문제풀이174

[개념정리] stack stack이란 LIFO(Last In First Out) 형식의 자료구조이다. ​ stack사용 #include 가장 최근에 스택에 추가한 항목이 가장 먼저 제거될 항목이다 ​ 선언 stack변수; stack s1; 사용 s1.push(element) // stack의 top에 element를 추가 s1.pop() //top에 있는 원소를 삭제 s1.top() //스택의 top에 있는 원소를 반환 s1.empty() //스택이 비어있으면 true 아니면 false를 반환 s1.size() //스택의 사이즈를 반환한다. 2020. 12. 26.
[개념정리] vector container vector 란 C++ STL vector는 list계열의 container 종류이다. 자료구조의 스택과 구조가 비슷하다. vector를 생성하면 메모리 heap에 생성되며 동적할당 된다. ​ vector 사용 선언 및 초기화 vector 변수명 vector 변수명(숫자) // 숫자만큼 벡터생성 후 0으로 초기화 vector 변수명 = {변수1, 변수2..} //벡터생성 후 오른쪽 변수값으로 초기화 vector q[] = {{변수1, 변수2}, {변수3, 변수4}) //2차원벡터 선언 및 초기화 vector변수명 //2차원 벡터 생성 Iterators 우선 vectorv; 로 선언한다. v.begin() //벡터 시작점의 주소값 반환 v.end() //벡터 끝부분+1 주소값 반환 v.[i] //벡터의 i.. 2020. 12. 26.
[개념정리] tuple tuple 이란 std::tuple로 std::pair를 확장한 자료형이다. 객체의 제한이 없이 묶을 수 있다. ​ tuple의 사용 #include 선언 queue q1; vector v; 만들기 q1.push({1,2,3}); v.push_back({1,2,3}); // or q1.make_tuple(1,2,3); 값추출 1. tie : tuple의 복수의 타입 인자값을 추출할 수 있다. int a,b,c; //(담을 변수들을 선언) tie(a,b,c)=q1; //로 추출가능 또는 여러 벡터로 구성되어있다면 vector v; tie(a,b,c)=v[i]; 로 원하는 위치의 tuple을 추출할 수 있을것이다. ​ 2. get : 몇 번재 타입을 얻고싶은지 선택하여 추출할 수 있다. cout 2020. 12. 26.
[개념정리] Pair Pair 클래스란 - 두 객체를 하나의 객체로 취급 할 수 있게 묶어주는 클래스 (쌍 을 표현할 때 사용) - 헤더에 존재 ​ Pair 생김새는 - template struct pair - T1 : first, T2 : second ​ Pair 사용법 - queue 에서 pair 사용 : queue q1; queue q2; 와 같이 선언할 수 있다. q1.push( {1,2} ); q2.push( { {1,a} ,2} ); 와 같이 사용할 수 있다. {1,2} 와 같이 사용하였는데, 실제로는 make_pair(1,2) 이다. 동일하게 사용된다. ​ 위에서 queue에 push 해주었는데 인자를 반환하여 사용하려면 다음과 같이 될것이다. q1.front().first => .. 2020. 12. 26.
[개념정리] STL라이브러리 - sort()2 풀이 일시 : 2020-08-02 ​ 개념 : sort()의 활용방안 part2 ​ 활용1 : 클래스 대신 Pair 라이브러리 사용하기 #include #include #include using namespace std; int main() { vectorv; //vector pair 선언 v.push_back(pair(9, "A")); v.push_back(pair(8, "B")); v.push_back(pair(7, "C")); v.push_back(pair(5, "D")); v.push_back(pair(6, "E")); sort(v.begin(), v.end()); //숫자의 오름차순으로 정렬된다. for (int i = 0; i < v.size(); i++) { cout b.second.seco.. 2020. 12. 26.
[개념정리] STL라이브러리 - sort()1 풀이 일시 : 2020-07-31 ​ 개념 : C++의 algorithm 헤더에 포함되어있는 함수로 정렬을 수행할 수 있다. ​ 활용1 : 기본 사용 - 주어진 숫자를 sort()로 쉽게 오름차순 정렬한다. #include #include using namespace std; int main(void) { int a[10] = { 9,3,5,4,1,10,8,6,7,2 }; sort(a, a + 10); for (int i = 0; i < 10; i++) { cout score < student.score; //기준 (내점수가 더 낮다면 우선순위가높다) } }; //클래스 생성완료 int main() { Student students[] = { Student("A",35), Student("B",24), .. 2020. 12. 26.
반응형