Ds\PriorityQueue::capacity()
trong PHP là một phương thức cho phép bạn truy vấn sức chứa hiện tại của Hàng đợi ưu tiên. Điều này có thể hữu ích để theo dõi trạng thái hiện tại của Hàng đợi ưu tiên và tối ưu hóa việc quản lý bộ nhớ khi xử lý các phần tử. Để hiểu thêm về hàm Ds\PriorityQueue::capacity()
trong PHP, hãy cùng Vietnix tham khảo qua bài viết sau đây.
Hàm Ds\PriorityQueue::capacity() là gì?
Hàm Ds\PriorityQueue::capacity()
trong PHP được sử dụng để kiểm tra dung lượng hiện tại của phiên bản PriorityQueue. Hàm cung cấp thông tin về số lượng phần tử mà Hàng đợi có thể lưu trữ mà không cần phải thay đổi kích thước nội bộ.
Cú pháp | int public Ds\PriorityQueue::capacity ( void ) |
Tham số | Hàm này không nhận bất kỳ tham số nào. |
Giá trị trả về | Hàm này trả về dung lượng hiện tại của hàng đợi PriorityQueue. |
Mọi người cũng xem:
Ví dụ minh hoạ hàm Ds\PriorityQueue::capacity() trong PHP
Có thể ví dụ như sau:
<?php
class SimplePriorityQueue {
private $queue;
private $capacity;
public function __construct() {
$this->queue = [];
$this->capacity = 16;
}
public function push($value, $priority) {
$this->queue[] = ['value' => $value, 'priority' => $priority];
usort($this->queue, function ($a, $b) {
return $b['priority'] <=> $a['priority'];
});
}
public function pop() {
if ($this->isEmpty()) {
throw new UnderflowException("Queue is empty");
}
return array_shift($this->queue)['value'];
}
public function peek() {
if ($this->isEmpty()) {
throw new UnderflowException("Queue is empty");
}
return $this->queue[0]['value'];
}
public function isEmpty() {
return empty($this->queue);
}
public function count() {
return count($this->queue);
}
public function copy() {
$copyQueue = new SimplePriorityQueue();
foreach ($this->queue as $item) {
$copyQueue->push($item['value'], $item['priority']);
}
return $copyQueue;
}
public function clear() {
$this->queue = [];
}
public function allocate($additionalCapacity) {
$this->capacity += $additionalCapacity;
}
public function capacity() {
return $this->capacity;
}
public function toArray() {
$result = [];
foreach ($this->queue as $item) {
$result[] = $item['value'];
}
return $result;
}
}
Triển khai thành chương trình:
<?php
// insert your handmade ds class from here
$pq = new SimplePriorityQueue();
// Use capacity() function
// to check the current capacity
var_dump($pq->capacity());
?>
Output hiển thị như sau: int(16)
Ví dụ 2:
<?php
// insert your handmade ds class from here
$pq = new SimplePriorityQueue()
echo("Current Capacity is: ");
// Use capacity() function
// to check the current capacity
var_dump($pq->capacity());
echo("Current Capacity is: ");
// Use allocate() function to
// allocate capacity
$pq->allocate(5);
// Display the allocated vector
// capacity
var_dump($pq->capacity());
// Use allocate() function to
// allocate capacity
$pq->allocate(120);
// Display the allocated vector
// capacity
var_dump($pq->capacity());
?>
Output như sau:
Current Capacity is: int(16) Current Capacity is: int(21) int(141)
Lời kết
Vietnix hy vọng nội dung bài viết trên đã giúp bạn hiểu rõ hơn về hàm Ds\PriorityQueue::capacity()
trong PHP. Ngoài ra, bạn cũng có thể tham khảo thêm các bài viết khác tại vietnix.vn để hiểu hơn về lập trình, chúc bạn thành công!