자료구조 만들기 [Dictionary] C++
Dictionary <v1.0> Developed by Drakk
개발환경 >> Visual Studio Code
언어 >> C++17
운영체제 >> Windows10
안녕하세요!
이번에는 Dictionary자료구조를 만들어왔습니다~
파이썬이나 C#에는 존재하는데
C++에서는 기본적으로 지원하지않고있어서 만들게됬어요!
(그외 map multimap과 같은 STL등등 같은역할을 수행하는 요소는 존재합니다!)
우선 Dictionary자료구조는 저혼자 심심해서 만들었구요
사용방법은 밑에 업로드한 유튜브 영상을 봐주세요!
다운로드는 여기로!
Dictionary란?
"Dictionary(딕셔너리)는 다른언어에서 hashmap, hashtable 이라고도 하며, Key-Value 형태의 값을 저장할 수 있는 자료구조이다." 라고하네요~!
[{ 공식문서 }]
정의된 매크로
"__DICT_NULL" = (0)
클래스
[] Dictionary<_KEY, _VALUE> : Dictionary기본클래스
[] DictionaryUnit<_KEY, _VALUE> : Dictionary의 key값과 value값을 분리해서 관리하는 클래스
Dictionary::생성자
[] Dictionary() : 파라미터가 존재하지않는 기본 생성자
[] Dictionary(_KEY, _VALUE) : 파라미터가 존재하는 생성자
Dictionary::소멸자
[] ~Dictionary() : 파라미터가 존재하지않는 기본 소멸자
Dictionary::메소드
[] void PushKey(_KEY, _VALUE) : 딕셔너리자료구조에 key값와 value값을 넣는 메소드
[] int PopKey(_KEY) : 딕셔너리자료구조에서 특정 key값을 지우는 메소드. 반환값은 삭제된 key값의 수이다. 만약 아무값도 삭제하지 않았을시 -1을 반환한다.
[] DictionaryUnit<_KEY, _VALUE> GetKeyFromValue(_VALUE) : value값을 이용해서 특정 key값을 반환하는 함수. 값을 얻을려면 반드시 반환타입으로 DictionaryUnit을 사용해야한다.
[] DictionaryUnit<_KEY, _VALUE> GetValueFromKey(_KEY) : key값을 이용해서 특정 value값을 반환하는 함수. 값을 얻을려면 반드시 반환타입으로 DictionaryUnit을 사용해야한다.
[] _KEY GetKey(int) : 첫번째 파라미터로 받은 값을 이용해서 key값의 특정 인덱스번호에 저장된 값을 반환한다.
[] _VALUE GetValue(int) : 첫번째 파라미터로 받은 값을 이용해서 value값의 특정 인덱스번호에 저장된 값을 반환한다.
[] void SwapKey(int, int) : 두 인덱스번호에 존재하는 key값을 교체한다.
[] int Capacity() : Dictionary클래스에서 관리하는 실제 메모리상의 크기를 반환한다.
[] int Count() : Dictionary클래스에서 관리하는 데이터의 크기를 반환한다.
[] Dictionary<_KEY, _VALUE> Copy(Dictionary<_KEY, _VALUE>&) : 첫번째 파라미터로 받은 Dictionary클래스값을 복사한다.
Dictionary::연산자
[] bool operator==(Dictionary<_KEY, _VALUE>&) : "==" 연산자
[] bool operator!=(Dictionary<_KEY, _VALUE>&) : "!=" 연산자
DictionaryUnit::생성자
[] DictionaryUnit() : 파라미터가 존재하지않는 기본 생성자
DictionaryUnit::소멸자
[] ~DictionaryUnit() : 파라미터가 존재하지않는 기본 소멸자
DictionaryUnit::메소드
[] _UNITKEY GetKey(int) : 첫번째 파라미터로 받은 인덱스번호의 key값을 반환한다.
[] _UNITVALUE GetValue(int) : 첫번째 파라미터로 받은 인덱스번호의 value값을 반환한다.
[] int KeyCount() : 포함된 모든 key값의 수를 반환한다.
[] int ValueCount() : 포함된 모든 value값의 수를 반환한다.
[] int KeyCapacity() : 포함된 모든 key값이 차지하는 실제 메모리상의 크기를 반환한다.
[] int ValueCapacity() : 포함된 모든 value값이 차지하는 실제 메모리상의 크기를 반환한다.
[{ 시연영상 }]
궁금한 부분이있다면 댓글로 질문주세요~!
그럼 봐주셔서 감사합니다!
그럼이만!
'🧼C, C++ > 자료구조' 카테고리의 다른 글
문자열 자르기 < c++20 / concept / requires > (0) | 2021.06.19 |
---|---|
#예고편# 자료구조 만들기 C++ [Dictionary] (0) | 2021.01.18 |
자료구조 만들기 [Vector] C++ (0) | 2020.11.08 |
댓글