728x90 야미스터디/Database9 [MySQL] 더미데이터 생성하기 DELIMITER $$ DROP PROCEDURE IF EXISTS loopInsert$$ CREATE PROCEDURE loopInsert() BEGIN DECLARE i INT DEFAULT 1; WHILE i 2022. 6. 10. [자료구조] Heap 언어 별 자료구조 보기 전에 일단 Heap 개념 먼저 잡고 가자! Heap Complete Binary Tree(완전 이진 트리)를 기본으로 갖는 자료구조로, 우선순위 큐를 위해 만들어진 자료구조이다 여러 개의 값들 중 최댓값 혹은 최솟값을 빠르게 찾아내도록 만들어진 자료구조이다 Heap은 일종의 반정렬 상태(느슨한 정렬 상태)를 유지한다 큰 값이 상위 레벨, 작은 값이 하위 레벨에 있다는 정도만 유지 즉, 부모 노드의 키 값이 자식 노드의 키 값보다 항상 큰(작은) 이진 트리이다 키의 대소 관계는 오직 부모노드와 자식노드 간에만 성립하며, 형재(sibillng)사이에는 대소관계가 정해지지 않는다 Heap 트리에서는 이진 탐색 트리와 달리 중복된 값을 허용한다 시간 복잡도는 O(logN)으로 빠른 편이다.. 2022. 1. 7. [DS] Hash(해시) Hash Tables는 Key Value System을 이용하여 자료를 정리한다 그 예시로는 사전이 있다 배열과 해시 테이블을 비교해보자 예시로 레스토랑에서 메뉴를 배열과 해시 테이블에 저장한다고 해보자 이 때 메뉴에서 피자의 가격을 찾는다고 생각해보자 만약 배열의 메뉴에서 찾는다면 선형검색을 통해 찾아야 한다 이는 시간이 오래걸리게 된다 메뉴를 해시에 저장하면 아래와 같은 모양이 되고, 여기서 피자의 가격을 찾으려면 그냥 key값으로 pizza를 넘겨주면 그에 대한 value로 피자의 가격이 나올 것이다 자, 여기서 첫번쨰 배열에 저장했을 때의 시간 복잡도는 O(N)이라고 할 수 있다 이는 배열의 원소가 많아질수록 시간이 오래걸리게 된다 -> Linear Time(선형 시간) 하지만 해시 테이블의 경우.. 2021. 12. 23. 이전 1 2 다음 728x90