본문 바로가기

Algorithms/C++ STL

(5)
Algorithm 라이브러리 [C++ 코딩테스트 대비] * 이 글은 단순 개인 참고용으로 작성한 글입니다 * Primitive Integer 최소값 최대값 min(상수 a, 상수 b) : 작은 상수 max(상수 a, 상수 b): 큰 상수 Vector 최소값 최대값 *min_element(v.begin(),v.end()): a vector element *max_element(v.begin(),v.end()): a vector element
C++ STL::Queue::Priority_Queue 오늘은 Queue 헤더파일에 포함되어있는 우선순위 큐(Heap)에 대해서 포스팅합니다~ Heap은 Insertion과 Deletion에 최적화되어있는 자료구조입니다. 데이터를 특정 기준에 맞춰 정렬된 상태로 보관하기 때문에 복잡한 문제에서 이용하기 정말 좋아요. ★ 기본 우선순위 큐(내림차순) ★ 아무것도 명시하지 않은 우선순위 큐는 내림차순으로 작동합니다! #include #include #include using namespace std; priority_queue pq; int main() { pq.push(10000); pq.push(10); pq.push(100); pq.push(1000); pq.push(1); while (pq.empty() != true) { cout
C++ ::string 으.. c++로 문자열처리를 하게될줄이야.. 오늘 포스팅은 문자열 처리를 다루는 포스팅입니다~ 자세한 내용은 http://www.cplusplus.com/reference/string/string/ string - C++ Reference www.cplusplus.com 위 사이트를 참조하세요! 문자 삽입(push_back함수) string 객체 마지막에 character형 문자를 삽입해주는 경우입니다. character형을 삽입해준다는점 반드시 기억해두세요! 예제 출력결과 ASCII CODE 48은 '0'에 해당하는 문자값이므로, push_back()함수에 의해 맨 마지막부터 삽입이 되었습니다. ※ 문자 수정의 경우는 [] 연산자를 이용해 접근, 수정해줄 수 있습니다. ※ 문자열 삽입(append함수)..
C++ STL::Queue Queue는 상당히 유용한 자료구조 입니다 ㅋㅋ BFS, TSP, BACKTRACKING 등 참 많이 쓰여요. 저장한 순서대로 데이터를 사용해야한다면 가장 사용하기 적합한 자료구조입니다. 제가 써본 STL들의 특징이 있는데요. 인자값으로 const 값을 받는다는 것입니다. Java를 사용해보신분들은 겪어보신적이 있으시겠지만 가끔 의도치않게 레퍼런스 변수가 인자로 넘어가서 프로그램이 꼬이는 경우가 있습니다. 제가 써본 STL들은 값을 복사해가기 때문에 계속 같은 변수를 이용해 push함수를 호출해도 별 무리가 없었네요! 소스코드 신나게 짜놨더니 속에서 꼬여서 전부다 바꿔야한다면.. ㅂㄷㅂㄷ.. 이렇게 구조체를 선언하고 구조체를 원소로 갖는 queue를 만들수도 있습니다 ★ 자주 사용하는 메서드 ★ push..
C++ STL::Vector ★ 2차원 배열 전역변수로 선언하기 ★ 프로그램을 만들다보면 전역변수로 써야할 일이 많은데요. 아래와 같은 방법으로 간단히 만들 수 있습니다. M=vector(n,vector(n,0)); 에서 n이 두번 쓰였어요! 첫번째 n은 행의 개수이고, 두번째 n은 열의 개수입니다. 마지막 0은 생성한 vector의 원소값을 0으로 초기화한다는 의미입니다~ ★ 자주 사용하는 메서드 ★ resize(int n) n만큼 vector의 원소 개수를 만들고, 그 값을 0으로 초기화합니다. push_back(int n) n을 vector의 맨 마지막에 추가합니다. vector의 크기는 1 증가합니다. at(int index) vector 원소중 index번째 원소의 값을 반환합니다. [int index] at의 기능을 포함..