从开发中删除最小元素

现在我们将说明删除deap数据结构中的min元素的技术。在删除期间,我们的主要目标是从深度中删除最小值。由于树的高度始终是log n,因此它消耗了log n数量级的时间。我们可以讨论删除操作如下-

Procedure deap_deletion(b[],m):
if(m<2)
   return; //There are no elements.
min=b[2]; //Minimum value is saved
for (i=2;2*i<=m;b[i]=b[k],i=k){
   k=i*2;
   If(k+1<=m && b[k]>b[k+1])
      k++;
   }
   k=max_value(i);
   if(x>b[k]){
      b[i]=b[k];
      insert y into maximum subtree;
   } else {
      insert y into minimum subtree;
}