딥 데이터 구조에 요소를 삽입하려면 아래와 같이 최소값과 최대값을 계산하는 절차가 필요할 수 있습니다. -
절차 min_value(m)://deap에서 최소값을 계산합니다. 반환 m-2 로그 2 ( (m-1) ;
프로시저 max_value(m)://deap에서 최대값을 계산합니다. m+2 로그 반환 2 (m-1) ;
딥 데이터 구조의 삽입 작업은 다음과 같은 방식으로 수행할 수 있습니다. -
- 힙 b[]에 대해 m이 deap의 최대 힙 내 위치인지 확인해야 합니다.
- 최소값과 최대값을 deap에서 계산합니다.
- 이제 왼쪽 하위 트리와 오른쪽 하위 트리의 키 값을 비교합니다.
- 드디어 다음과 같은 알고리즘으로 삽입 연산을 수행합니다.
Procedure deap_insertion(b[], y, m): if (m==1) b[2]=y; else{ if(m is in maximum subtree){ index=min_value(m); if(y<b[index]){ b[m]=b[index]; insert y in minimum subtree; } else insert y in maximum subtree; } else { index=max_value(m); if(x>b[index]){ b[m]=b[index]; insert y into maximum subtree; } else insert y into minimum subtree; }