해시함수 (Hash Function) 임의의 길이의 데이터를 고정된 길이의 데이터로 매핑하는 함수 해시 함수 특성 압축성: 다양한 가변 길이의 입력에 대해 고정된 크기의 결과값을 반환하는 성질 효율성: 어떤 입력 값에 대해서도 많은 자원과 시간이 소요되지 않고 처리되는 성질 저항성: 결과값을 바탕으로 입력 값을 찾는 것이 불가능한 성질 해시테이블 (Hash Table) Hash 함수를 사용하여 평균 O(1) 시간 복잡도로 특정 값을 시속하게 찾는 자료구조 충돌(Collision) 해결 방법 해시 함수 변경: 더 큰 숫자의 공간과 Modular 산술 값을 이용해 충돌 최소화 자료구조 확장: Open Addressing Method (선형 조사법, 이중해시) , Close Addressing Method(체..
딕셔너리 (Dictionary) key-value 형태로 다양한 자료형 개체(Entity)를 저장하는 자료구조(~Map) 구현 메서드 (method) 전체 개체 획득/ 초기화 / 크기 반환: Dictionary.getBuffer(), Dictionary.clear(). Dictionary.size() 개체 추가/삭제/반환/여부: Dictionary.set(), Dictionary.remove(), Dictionary.get(), Dictionary.has() key, value 배열 반환/ 고차 함수: Dictionary.keys(), Dictionary.values(), Dictionary.each() 📌 딕셔너리 (Dictionary) 구현 소스 // Dictionary(): 개체(Entity)를 저..
우선순위 큐 (Priority Queue) 우선순위를 고려하여 먼저 넣은 데이터가 먼저 나오는 FIFO(First In First Out) 기반의 선형 자료 구조 우선순위 정렬방식: 배열 기반, 연결리스트 기반, 힙(Heap) 기반 등의 정렬 방식 존재 구현 메서드 (method) 데이터 전체 획득/ 비어있는지 확인: PriorityQueue.getBuffer(), PriorityQueue.Empty() 데이터 추가/삭제: PriorityQueue.enqueue(), PriorityQueue.dequeue(); 첫번째 데이터/ 사이즈 /전체 삭제: PriorityQueue.front(), PriorityQueue.size(), PriorityQueue.clear() 📌 우선순위 큐(Priority Que..
