🧑🏻💻(63)
-
[C++] map / multimap / unordered_map / unordered_multimap
맵(map)맵은 키-값 쌍을 저장하고 키를 기반으로 데이터를 검색하는 데 사용됩니다. C++에서는 각 맵 타입의 동작 방식, 특징, 사용 목적에 따라 차이가 있습니다. 주요 map 타입들과 그 차이점을 정리하려 합니다.1. std::map특징:키-값 쌍을 저장하며 키를 기준으로 정렬된 상태를 유지.내부적으로 레드-블랙 트리를 사용.키는 중복 불가능.키의 정렬 기준은 기본적으로 오름차순이며, 사용자 정의 가능.장점:정렬된 키 순서로 데이터를 순회 가능.키 검색, 삽입, 삭제가 O(log N).단점:중복 키가 필요하면 사용할 수 없음.삽입/삭제 시 추가적인 정렬 비용 발생.사용 예시:#include #include int main() { std::map myMap; myMap[1] = "One";..
2024.11.22 -
[C++] 순열, 조합
표준 라이브러리로는 next_permutaion 과 prev_permutaion 이 있습니다.next_permutaion : "오름차순의 배열"을 기반prev_permutaion : "내림차순의 배열"을 기반#include using namespace std;template void pa(t T) { for (auto p : T) cout v = {1, 2, 3}; cout dfs로 전체 순열 뽑아내려면,#include using namespace std;void dfs(int n, vector a, vector v) { if (a.size() == n) { for (auto p : a) cout > n; vector a; vector visited(n + 1, false); dfs(..
2024.10.05 -
[C++] vector
c++17을 기준으로 사용합니다.아래 레퍼런스를 참고하였습니다. C++17 - cppreference.comThe following features were merged into C++17: From the File System TS: the filesystem library. From the Library fundamentals v1 TS: features, including std::any, std::optional, std::string_view, std::apply, polymorphic allocators, searchers. From Libraryen.cppreference.com C++Clang++ 10.0 (C++17)clang++ -std=c++17 -O2 -Wno-unused-resul..
2024.09.28 -
[C++] Permutation, Combination
#include #include #define n 4#define r 2using namespace std;vector pArr(r, 0);vector check(n + 1, false);void printArray(vector arr) { for (int i = 0; i #include #include #define n 4#define r 2using namespace std;vector pArr(r, 0);void printArray(vector arr) { for (int i = 0; i #include #include #define n 4#define r 3using namespace std;vector cArr(r, 0);void printArray(vector arr) { for (i..
2024.08.10 -
[MySQL] 기본 SELECT
재구매가 일어난 상품과 회원 리스트 구하기ONLINE_SALE 테이블에서 USER_ID와 PRODUCT_ID만 뽑아내는데, USER_ID와 PRODUCT_ID를 그룹화 시켜서 2개 이상 중복되는 경우에 SELECT 할 때USER_ID를 오름차순으로 정렬, PRODUCT_ID를 내림차순으로 정렬 시키는 QuerySELECT USER_ID, PRODUCT_ID FROM ONLINE_SALEGROUP BY USER_ID, PRODUCT_ID HAVING COUNT(*) > 1ORDER BY USER_ID ASC, PRODUCT_ID DESC; https://school.programmers.co.kr/learn/courses/30/lessons/131536 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포..
2024.04.27