[toc] ## 数组 ### 定义 用一组连续的内存空间,来存储一组具有相同类型的数据(但是php中数组是通过散列表来实现的,不成立此法则) ### 优点 可以通过下标值随机访问数组内的任何元素,算法复杂度是 O(1) ### 缺点 删除/插入元素比较费劲,以删除为例,需要在删除某个元素后,将后续元素都往前移一位,如果是插入,则需要将插入位置之后的元素都往后移,所以对数组的插入/删除而言,算法复杂度是 O(n) ## 链表 ### 定义 链表并不需要一块连续的内存空间,它通过“指针”将一组零散的内存块串联起来使用 ### 单链表 ### 循环链表 ### 双向链表 ### 双向循环链表