ArrayList的优缺点
优点:
- 根据指定的下标(索引)去查找元素,效率非常高!时间复杂度O(1)
- 更新元素也很快:更新指定下标的元素
缺点:
增容需要申请新空间,拷贝数据,释放旧空间。会有不小的消耗。
每次插入数据,都需要移动元素,极端情况下,如果插入到0下标,那么移动的元素复杂度O(n)
每次删除数据的时候,都需要移动元素,极端情况下,删除下标为0的元素:O(N)
当满了之后,进行1.5扩容倍扩容,然后只放了1个元素, 势必会有一定的空间浪费 。
总结:顺序表适用于经常查找和更新元素的场景下才推荐使用