Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม

การนำ Min Element ออกจาก Deaps


ตอนนี้เราจะอธิบายเทคนิคในการลบองค์ประกอบขั้นต่ำในโครงสร้างข้อมูล Deap ในระหว่างการลบเป้าหมายหลักของเราที่จะลบค่าต่ำสุดจาก deaps เนื่องจากความสูงของต้นไม้มักจะเป็นท่อนซุง มันจึงกินเวลาของการเรียงลำดับท่อนซุง 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;
}