본문 바로가기
반응형

C++20

[C/C++] C++ 백터와 배열의 차이점 (C++ Vector and Array Difference) 카테고리 게시글 작성 날짜 게시글 최근 수정 날짜 작성자 C/C++ 2020-02-23 22:31 2022.03.15. 19:03 Dev.Yang 아래의 도표는 Vector STL (Standard Template Library)와 Array에 대한 비교 도표입니다. 벡터 (Vector) 배열 (Array) Create Element들을 순차적으로 저장할 수 있는 Container 입니다. 인덱스 (Index) 기반의 기본적인 자료구조입니다. Memory Array에 비하여 메모리 공간을 많이 차지합니다. 고정 된 길이 값을 사용하므로 효율적으로 메모리 공간을활용할 수 있습니다. Length 가변적인 길이를 가지고 있습니다. 고정 된 길이를 가지고 있습니다. Usage 빈번하게 Element에 대한 삽입.. 2020. 2. 23.
[Algorithm - Concept] AVL Tree (named after inventors Adelson-Velsky and Landis) [Algorithm - Concept] AVL Tree (named after inventors Adelson-Velsky and Landis) AVL 트리(AVL tree)는 가장 초기에 나온 균형 잡힌(balanced) 이진 탐색 트리이다. 1962년 G.M. Adelson-Velskii와 E.M. Landis 가 그들의 논문 "An algorithm for the organization of information" 을 통해 발표했고 그들의 이름을 따서 지어졌다. AVL 트리는 각각의 노드(node, 분기점)마다 왼쪽과 오른쪽 부분 트리(sub-tree)의 높이 차이에 대한 정보를 가지며 부분 트리의 높이 차이가 1보다 크지 않은 성질을 가진다. 균형 잡힌 AVL 트리는 n개의 원소가 있을 때 O(l.. 2019. 9. 4.
[프로그래머스 - 구현] 압축 (for kakao) 📄 [구현] 압축 C++ Source Code #include #include #include using namespace std; /*LZW 압축은 다음 과정을 거친다. ⓐ 길이가 1인 모든 단어를 포함하도록 사전을 초기화한다. ⓑ 사전에서 현재 입력과 일치하는 가장 긴 문자열 w를 찾는다. ⓒ w에 해당하는 사전의 색인 번호를 출력하고, 입력에서 w를 제거한다. ⓓ 입력에서 처리되지 않은 다음 글자가 남아있다면(c), w+c에 해당하는 단어를 사전에 등록한다. ⓔ 단계 2로 돌아간다. */ #define INT_PAIR pair // ※ CAPTION - 압축 알고리즘이 영문 대문자만 처리한다고 한다. vector solution(string msg) { vector answer; unordered_.. 2019. 8. 13.
[프로그래머스 - 구현] 뉴스 클러스터링 (for kakao) 📄 [구현] 뉴스 클러스터링 C++ Source Code #include #include #include #include #include using namespace std; /*ⓐ 자카드 유사도는 집합 간의 유사도를 검사하는 여러 방법 중의 하나로 알려져 있다. 두 집합 A, B 사이의 자카드 유사도 J(A, B)는 두 집합의 교집합 크기를 두 집합의 합집합 크기로 나눈 값으로 정의된다. */ /*ⓑ 입력으로 들어온 문자열은 두 글자씩 끊어서 다중집합의 원소로 만든다. 이때 영문자로 된 글자 쌍만 유효하고, 기타 공백이나 숫자, 특수 문자가 들어있는 경우는 그 글자 쌍을 버린다. 예를 들어 ab+가 입력으로 들어오면, ab만 다중집합의 원소로 삼고, b+는 버린다. */ const bool checkA.. 2019. 8. 9.
반응형