"DynamicArray" (数据结构)
"DynamicArray"
表示一个动态可扩展数组,其中的元素是普通表达式.
更多信息
- 可扩展数组可用于连续追加元素以及有效地提取和更新元素.
-
CreateDataStructure[ "DynamicArray"] 创建新的空 "DynamicArray" CreateDataStructure[ "DynamicArray",elems] 创建包含 elems 的新 "DynamicArray" Typed[x,"DynamicArray"] 指定 x 的类型为 "DynamicArray" - 对于类型为 "DynamicArray" 的数据结构,可进行以下操作:
-
ds["Append",x] 将 x 追加到 ds 末端 时间:O(1) ds["Copy"] 返回 ds 的副本 时间:O(n) ds["Drop",i] 删除 ds 中第 i 部分 时间:O(n) ds["DropAll"] 删除 ds 中的所有元素 时间:O(n) ds["DropLast"] 删除 ds 的最后一个元素 时间:O(1) ds["Elements"] 返回 ds 的参数列表 时间:O(n) ds["EmptyQ"] 如果 ds 中没有元素则返回 True 时间:O(1) ds["Fold",fun,init] 将 fun 应用于 ds 的以 init 开始的元素,并累计结果 时间:O(n) ds["Insert",x,i ] 在位置 i 处将 x 插入 ds 时间:O(1) ds["JoinBack",elems ] 将 elems 添加到 ds 的后端 时间:O(nelems) ds["Length",x] 存储在 ds 中的元素的数量 时间:O(1) ds["Part",i] 给出 ds 中的第 i 个元素 时间:O(1) ds["SetPart",i,elem] 更新 ds 的第 i 个元素 时间:O(1) ds["SwapPart",i,j] 将 ds 的第 i 个元素和第 j 个元素互换 时间:O(1) ds["Visualization"] 返回 ds 的可视化 时间:O(n) - 还支持以下函数:
-
dsi===dsj 如果 dsi 等于 dsj 则为 True ds["Part",i]=val 将 ds 的第 i 个元素设为 val FullForm[ds] ds 的完全形式 Information[ds] 关于 ds 的信息 InputForm[ds] ds 的输入形式 Normal[ds] 将 ds 转换成正规表达式
范例
打开所有单元关闭所有单元基本范例 (2)
可用 CreateDataStructure 创建新的 "DynamicArray":
范围 (1)
信息 (1)
可用 CreateDataStructure 创建新的 "DynamicArray":
应用 (11)
属性和关系 (1)
"FixedArray" (1)
适用于 "DynamicArray" 的许多算法也适用于 "FixedArray".