简述数组和链表的区别
2015-12-17 18:49
176 查看
逻辑结构上:
数组是申请一块连续的内存空间,并且在编译阶段确定空间大小。运行阶段不允许改变。若数据量过大的话会超出界限,造成溢出。若数据量太小,则会造成空间浪费
链表是动态申请内存空间,其大小不用事先预支,根据需要动态的申请或者删除后
物理内存上:
数组是连续一内存空间,访问数据可直接根据下标访问,时间复杂度o(1)。添加删除的操作要移动整个数组数据,时间复杂度位o(n)
链表在物理内存上不连续,对于访问数据,要遍历整个链表,而添加和删除则只需要一个指定位置的指针即可
数组是申请一块连续的内存空间,并且在编译阶段确定空间大小。运行阶段不允许改变。若数据量过大的话会超出界限,造成溢出。若数据量太小,则会造成空间浪费
链表是动态申请内存空间,其大小不用事先预支,根据需要动态的申请或者删除后
物理内存上:
数组是连续一内存空间,访问数据可直接根据下标访问,时间复杂度o(1)。添加删除的操作要移动整个数组数据,时间复杂度位o(n)
链表在物理内存上不连续,对于访问数据,要遍历整个链表,而添加和删除则只需要一个指定位置的指针即可
相关文章推荐
- 判断Android 手机网络连接
- 你该知道的古典音乐榜单
- OpenGL(六)之初入动画制作
- QT错误.
- tyvj P2844 无穷的序列(seq)
- Git学习——管理我们的代码
- [转载]在iTOP-4412开发板上调试helloworld应用
- C语言告警warning: missing braces around initializer详解
- 第6周项目2--建立链栈算法库.cpp
- Nodejs源码分析之assert
- UIScrollView详解
- Splunk企业版简易破解每日500M索引上限
- c++11 + SDL2 + ffmpeg +OpenAL + java = Android播放器
- apache http service 2.4 + mod_jk + tomcat 8 集群配置总结
- ViewPager取消缓存策略
- 大数据学习路线
- asp.net string有多行文字
- 小学四则运算APP 第一阶段冲刺
- 【气象助手项目开发】-第二篇:开发前的准备工作
- JVM理论与实践【JVM参数调优】