PHP - Ds\PriorityQueue::clear() 函式



PHP 的 **Ds\PriorityQueue::clear()** 函式用於移除優先順序佇列中的所有元素。此方法不返回值,只移除優先順序佇列中的專案。當您需要重置佇列並從新的優先順序集開始時,此方法非常有用。

語法

以下是 PHP **Ds\PriorityQueue::clear()** 函式的語法:

void Ds\PriorityQueue::clear()

引數

此函式不接受任何引數。

返回值

**clear()** 函式不返回值。

PHP 版本

此函式從 Ds 擴充套件 1.0.0 版本開始可用。

示例 1

首先,我們將向您展示 PHP **Ds\PriorityQueue::clear()** 函式清除優先順序佇列或移除佇列中所有元素的基本示例。

<?php
   // Import the Ds\PriorityQueue here
   use Ds\PriorityQueue;

   // Create a new PriorityQueue
   $pqueue = new PriorityQueue();
   $pqueue->push("A", 1);
   $pqueue->push("B", 2);
   $pqueue->push("C", 3);
   
   // Before clear function
   echo "Count before clear: " . $pqueue->count() . "\n"; 
   
   $pqueue->clear();
   
   // After clear function
   echo "Count after clear: " . $pqueue->count() . "\n"; 
?>

輸出

以下是以下程式碼的結果:

Count before clear: 3
Count after clear: 0

示例 2

在這裡,我們將嘗試使用 **clear()** 函式清除一個空的優先順序佇列。

<?php
   // Import the Ds\PriorityQueue here
   use Ds\PriorityQueue;

   // Create a new PriorityQueue
   $pqueue = new PriorityQueue();
   $pqueue->clear();
   
   echo "Count after clear: " . $pqueue->count() . "\n"; 
?> 

輸出

這將生成以下輸出:

Count after clear: 0

示例 3

現在,我們將使用 **clear()** 函式清除一個具有混合優先順序的優先順序佇列,並在清除後檢視輸出。

<?php
   // Import the Ds\PriorityQueue here
   use Ds\PriorityQueue;

   // Create a new PriorityQueue
   $pqueue = new PriorityQueue();

   // Insert elements in the queue
   $pqueue->push("Task1", 3);
   $pqueue->push("Task2", 5);
   $pqueue->push("Task3", 1);
   $pqueue->push("Task4", 6);
   
   echo "Count before clear: " . $pqueue->count() . "\n"; 
   
   $pqueue->clear();
   
   echo "Count after clear: " . $pqueue->count() . "\n"; 
?> 

輸出

這將建立以下輸出:

Count before clear: 3
Count after clear: 0

示例 4

在下面的示例中,我們使用 **clear()** 函式在處理元素後清除佇列,並在控制檯中檢視輸出。

<?php
   // 
   use Ds\PriorityQueue;

   // Create a new PriorityQueue
   $pqueue = new PriorityQueue();

   // Insert elements in the queue
   $pqueue->push("Low", 1);
   $pqueue->push("High", 3);
   $pqueue->push("Medium", 2);
   
   while (!$pqueue->isEmpty()) {
       echo $pqueue->pop() . "\n";
   }
   
   $pqueue->clear();
   
   echo "Count after clear: " . $pqueue->count() . "\n"; 
?> 

輸出

以下是上述程式碼的輸出:

High
Medium
Low
Count after clear: 0

示例 5

此示例演示如何建立一個優先順序佇列,新增具有優先順序的條目,然後使用 **clear()** 函式將佇列返回到其起點。

<?php
   // Create a new PriorityQueue here
   $pqueue = new \Ds\PriorityQueue();
   
   // Push elements
   $pqueue->push("Tutorials", 10); 
   $pqueue->push("Point", 20); 
   $pqueue->push("India", 30); 
  
   echo "The initial PriorityQueue is: \n"; 
   print_r($pqueue); 
  
   $pqueue->clear(); 
  
   echo "\n The PriorityQueue after clear() function: \n"; 
   print_r($pqueue); 
?>

輸出

以下是上述程式碼的輸出:

The initial PriorityQueue is: 
Ds\PriorityQueue Object
(
    [0] => India
    [1] => Point
    [2] => Tutorials
)

 The PriorityQueue after clear() function: 
Ds\PriorityQueue Object
(
)
php_function_reference.htm
廣告