PHP - 向量函数



向量是在一个连续缓冲区中的一系列值,该缓冲区会自动增长和缩小。它是最高效的顺序结构,因为值索引直接映射到缓冲区中的索引,并且增长因子不受特定倍数或指数的限制。

优势

  • 支持数组语法(方括号)。
  • 对于相同数量的值,它比数组使用更少的内存。
  • 当其大小下降到足够低时,会自动释放分配的内存。
  • 容量不必是 2 的幂。
  • get()、set()、push()、pop() 都是 O(1)。

劣势

  • shift()、unshift()、insert() 和 remove() 都是 O(n)。

函数列表

以下是 Vector 类提供的函数列表:

序号 函数及描述
1

Ds\Vector::allocate()

此函数可以为所需的容量分配足够的内存。

2

Ds\Vector::apply()

此函数可以通过对每个值应用回调函数来更新所有值。

3

Ds\Vector::capacity()

此函数可以返回当前容量。

4

Ds\Vector::clear()

此函数可以删除所有值。

5

Ds\Vector::__construct()

此函数可以创建一个新实例。

6

Ds\Vector::contains()

此函数可以确定向量是否包含给定的值。

7

Ds\Vector::copy()

此函数可以返回向量的浅拷贝。

8

Ds\Vector::count()

此函数可用于计算向量中元素的数量。

9

Ds\Vector::find()

此函数可以使用可调用对象创建一个新向量,以确定要包含哪些值。

10

Ds\Vector::first()

此函数可以返回向量中的第一个值。

11

Ds\Vector::get()

此函数可以返回给定索引处的 value。

12

Ds\Vector::insert()

此函数可以在给定索引处插入值。

13

Ds\Vector::isEmpty()

此函数可以返回向量是否为空。

14

Ds\Vector::join()

此函数可以将所有值作为字符串连接在一起。

15

Ds\Set::jsonSerialize()

此函数可以返回可以转换为 JSON 的表示形式。

16

Ds\Vector::last()

此函数可以返回最后一个值

17

Ds\Vector::map()

此函数可以返回将回调应用于每个值的结果。

18

Ds\Sequence::merge()

此函数可以返回将所有给定值添加到序列的结果。

19

Ds\Sequence::pop()

此函数可以删除并返回最后一个值。

20

Ds\Vector::push()

此函数可以将值添加到向量的末尾。

21

Ds\Vector::reduce()

此函数可以使用回调函数将向量简化为单个值。

22

Ds\Vector::remove()

此函数可以删除并返回按索引的值。

23

Ds\Vector::reverse()

此函数可以就地反转向量。

24

Ds\Vector::reversed()

此函数可以返回反转的副本。

25

Ds\Vector::rotate()

此函数可以按给定数量的旋转旋转向量。

26

Ds\Vector::set()

此函数可以更新给定索引处的 value。

27

Ds\Vector::shift()

此函数可以删除并返回第一个值

28

Ds\Vector::slice

此函数可以返回给定范围的子向量。

29

Ds\Vector::sort()

此函数可以就地排序向量。

30

Ds\Vector::sorted()

此函数可以返回排序后的副本。

31

Ds\Vector::sum()

此函数可以返回向量中所有值的总和。

32

Ds\Vector::toArray

此函数可以将向量转换为数组。

33

Ds\Vector::unshift

此函数可以将值添加到向量的前面。

php_function_reference.htm
广告