为什么数组要求相同类型的元素,而在链表中却没有强调同类型呢?

好早就有这个疑问了,最近学习到了。

这是因为

链表由结点组成,结点之间通过引用(指针)连接,各个结点可以存储不同类型的数据,例如
int、double、string、object 等。
相对地,数组元素则必须是相同类型的,这样才能通过计算偏移量来获取对应元素位置。例
如,如果数组同时包含 int 和 long 两种类型,单个元素分别占用 4 bytes 和 8 bytes ,那么此
时就不能用以下公式计算偏移量了,因为数组中包含了两种长度的元素。

# 数组某元素内存地址 = 数组内存地址 + 元素长度 * 元素索引

你可能感兴趣的:(数据结构算法学习,链表,数据结构)