언어/C++

    [C++] Map 자료구조

    map 이란 map의 자료구조는 트리로 구성되어 있다. 정확히 말하면 레드 블랙 트리이다. 레드 블랙 트리는 자가 균형 이진 탐색 트리로써 삽입과 삭제가 일어나는 경우에 자동으로 그 높이를 작게 유지하는 이진 탐색 트리이다. 높이를 작게 유지하는 이유는 연산 과정에서 트리의 높이가 한쪽으로 치우치는 것을 막기 위함이다. 이는 시간복잡도와 관련이 있는데, 트리에 n개의 원소가 있을 때 O(log n)의 시간 복잡도로 삽입, 삭제, 검색을 할 수 있다. map map은 key, value 값이 쌍으로 저장되는 형태를 띠며 중복을 허용하지 않는다. 따라서 key값을 이용해서 value를 찾을 수 있다. 또한, map은 자료를 저장할때 내부에서 자동으로 정렬한다. key를 기준으로 정렬하며 오름차순으로 정렬한다..

    [C++] string to int, int to string

    String to int int stoi (const string& str [, size_t* idx = 0, int base = 10]) : string to int string 을 int 로 바꿔주기 위해서는 stoi() 함수를 써야한다. string to Integer를 줄인 것이다. #include 도 선언해주어야 한다. 세번째 인수를 보면 기본으로 10이 주어져 있는데, 이는 10진수인 string이란 뜻이다. N으로 바꾸면 N진수 string을 10진수 int로 바꾸겠다는 뜻이다. int to String string to_string(int val) : int to string int 를 string 으로 바꾸는 법은 더 직관적이다. int뿐만 아니라 double, long long 등 다 ..