首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Vector (class)

介绍

(没有可用的版本信息,可能只在Git中)

Vector是连续缓冲区中的一系列值,可自动增长和缩小。这是最有效的顺序结构,因为值的索引是直接映射到其缓冲区中的索引,并且增长因子不受特定的倍数或指数限制。

优势

  • 支持数组语法(方括号)。
  • 对于相同数量的值,使用比阵列少的总体内存。
  • 当大小下降得足够小时,自动释放分配的内存。
  • 容量不一定是2的幂。
  • get()set()push()pop()都是O(1)。

弱点

  • shift()unshift()insert()remove()都是O(n)。Class synopsis Ds \ Vector实现Ds \ Sequence{/ *常量* / const int MIN_CAPACITY = 10; / *方法* / public void allocate(int $ capacity)public void apply(callable $ callback)public int capacity(void)public void clear(void)混合$ ...值])public Ds \ Vector copy(void)public Ds \ Vector filter([callable $ callback])public mixed find(mixed $ value)public mixed get(void $ index) public void insert(int $ index [,mixed $ ... values])public bool isEmpty(void)public string join([string $ glue])public mixed last(void)public Ds \ Vector map(callable $ callback)public Ds \ Vector merge(mixed $ values)public mixed pop(void)public void push([mixed $ ... values])public mixed reduce(callable $ callback [混合$初始])public void remove(int $ index)public void reverse(void)public Ds \ Vector reversed(void)public void rotate(int $ rotations)public void set(int $ index,mixed $ value)public mixed shift (void)public Ds \ Vector slice(int $ index [,int $ length])public void sort([callable $ comparator])public Ds \ Vector sorted([callable $ comparator])public number sum(void)public array toArray (void)public void unshift([mixed $ values])}预定义常量public void sort([callable $ comparator])public Ds \ Vector sorted([callable $ comparator])public number sum(void)public array toArray(void)public void unshift([mixed $ values])}预定义的常量public void sort([callable $ comparator])public Ds \ Vector sorted([callable $ comparator])public number sum(void)public array toArray(void)public void unshift([mixed $ values])}预定义的常量Ds\Vector::MIN_CAPACITY
  • 目录
  • Ds \ Vector :: allocate - 为所需容量分配足够的内存。
  • Ds \ Vector :: apply - 通过对每个值应用回调函数来更新所有值。
  • Ds \ Vector :: capacity - 返回当前容量。
  • Ds \ Vector :: clear - 删除所有值。
  • Ds \ Vector :: __construct - 创建一个新实例。
  • Ds \ Vector :: contains - 确定向量是否包含给定值。
  • Ds \ Vector :: copy - 返回矢量的浅表副本。
  • Ds \ Vector :: count - 返回集合中值的数量。
  • Ds \ Vector :: filter - 使用可调用函数创建一个新矢量,以确定要包含哪些值。
  • Ds \ Vector :: find - 尝试查找值的索引。
  • Ds \ Vector :: first - 返回向量中的第一个值。
  • Ds \ Vector :: get - 返回给定索引处的值。
  • Ds \ Vector :: insert - 在给定索引处插入值。
  • Ds \ Vector :: isEmpty - 返回矢量是否为空
  • Ds \ Vector :: join - 将所有值连接为一个字符串。
  • Ds \ Vector :: jsonSerialize - 返回可以转换为JSON的表示。
  • Ds \ Vector :: last - 返回最后一个值。
  • Ds \ Vector :: merge - 返回将所有给定值添加到向量的结果。
  • Ds \ Vector :: pop - 删除并返回最后一个值。
  • Ds \ Vector :: push - 将值添加到矢量的末尾。
  • Ds \ Vector :: reduce - 使用回调函数将矢量减少为单个值。
  • Ds \ Vector :: remove - 通过索引删除并返回一个值。
  • Ds \ Vector :: reverse - 在原地颠倒矢量。
  • Ds \ Vector :: reversed - 返回一个颠倒的副本。
  • Ds \ Vector :: rotate - 将向量旋转给定数量的旋转。
  • Ds \ Vector :: set - 更新给定索引处的值。
  • Ds \ Vector :: shift - 移除并返回第一个值。
  • Ds \ Vector :: slice - 返回给定范围的子向量。
  • Ds \ Vector :: sort - 就地排序向量。
  • Ds \ Vector :: sorted - 返回已排序的副本。
  • Ds \ Vector :: sum - 返回矢量中所有值的和。
  • Ds \ Vector :: toArray - 将矢量转换为数组。
  • Ds \ Vector :: unshift - 将值添加到矢量的前面。

← Ds\Sequence::unshift

Ds\Vector::allocate →

扫码关注腾讯云开发者

领取腾讯云代金券