数组和链表的理解和运行时间分析

说一下存储数据的二种基本方式:数组和链表

内存结构:


数组和链表的原理:
数组会先在内存中分配空间,插入和删除元素,都会造成其它元素的重新排列,当然插入元素可以通过预留空间来处理,但是这样会造成内存的浪费,如果预留空间不够,你还是需要重新分配空间。
链表会在内存中存入元素和指向下一个存储内存的地址,可以分布在内存任意地址。

运行时间的差异:
数组的运行时间在读取上是O(1)
                      插入和删除是O(n)
链表的运行时间在读取上是O(n)
                      插入和删除是O(1)

发布了36 篇原创文章 · 获赞 11 · 访问量 1万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章