PHP Conference Japan 2024

Ds\Deque::unshift

(PECL ds >= 1.0.0)

Ds\Deque::unshift将值添加到双端队列的开头

描述

public Ds\Deque::unshift(混合 $values = ?):

将值添加到双端队列的开头,并将所有当前值向前移动以腾出空间以容纳新值。

参数

values

要添加到双端队列开头的值。

注意:

多个值将按传递的顺序添加。

返回值

不返回值。

示例

示例 #1 Ds\Deque::unshift() 示例

<?php
$deque
= new \Ds\Deque([1, 2, 3]);

$deque->unshift("a");
$deque->unshift("b", "c");

print_r($deque);
?>

以上示例将输出类似以下内容

Ds\Deque Object
(
    [0] => b
    [1] => c
    [2] => a
    [3] => 1
    [4] => 2
    [5] => 3
)
添加注释

用户贡献的注释 1 条注释

1
hugo at fc dot up dot pt
4 年前
在文档中说“将所有当前值向前移动”,虽然听起来复杂度应该是 O(N),但我检查了 https://github.com/php-ds/ext-ds/blob/master/src/ds/ds_deque.c#L366 的代码,实际上每个元素的复杂度都是 O(1)
To Top