This commit is contained in:
krahets
2023-08-31 02:30:38 +08:00
parent 5f4a7728b2
commit 00adffaca7
6 changed files with 79 additions and 64 deletions

View File

@@ -25,11 +25,10 @@ comments: true
链表由结点组成,结点之间通过引用(指针)连接,各个结点可以存储不同类型的数据,例如 int、double、string、object 等。
相对地,数组元素则必须是相同类型的,这样才能通过计算偏移量来获取对应元素位置。例如,如果数组同时包含 int 和 long 两种类型,单个元素分别占用 4 bytes 和 8 bytes ,那么此时就不能用以下公式计算偏移量了,因为数组中包含了两种 `elementLength`
相对地,数组元素则必须是相同类型的,这样才能通过计算偏移量来获取对应元素位置。例如,如果数组同时包含 int 和 long 两种类型,单个元素分别占用 4 bytes 和 8 bytes ,那么此时就不能用以下公式计算偏移量了,因为数组中包含了两种长度的元素
```
// 元素内存地址 = 数组内存地址 + 元素长度 * 元素索引
elementAddr = firtstElementAddr + elementLength * elementIndex
```shell
# 元素内存地址 = 数组内存地址 + 元素长度 * 元素索引
```
!!! question "删除节点后,是否需要把 `P.next` 设为 $\text{None}$ 呢?"