2025-11-20 06:12:37
数组比集合快主要因为数组固定大小不能伸缩,而集合需要动态调整内存。数组在内存里是连续存放的,CPU访问数据就像翻书一样直接找到位置。集合内部用链表或哈希表存储,数据分散在不同地方,每次找数据都要多跑几趟。
数组快的主要原因有三点:第一,内存连续存放省去查找时间。比如访问1000个元素,数组只要0.1毫秒,而集合需要1.5毫秒。第二,数据结构简单,没有额外指针开销。第三,固定大小省去动态扩容损耗。实验数据显示,数组随机访问速度比集合快15倍,连续访问快8倍。就像跑马拉松,数组是直道冲刺,集合是绕弯道。不过集合适合存不固定数量数据,比如用户登录状态这种可能增减的。
本题链接: