线性表顺序存储的优缺点
来源:互联网 发布:大数据交换平台 编辑:程序博客网 时间:2024/06/05 05:52
插入和删除的时间复杂度
先来看最好的情况,如果元素要插入到最后一个位置,或者删除最后一个元素,此时时间复杂度为0(1),因为不需要移动元素的,就如同来了一个新人要正常排队,当然是排在最后,如果此时他又不想排了,那么他一个人离开就好了,不影响任何人。
至于平均的情况,由于元素插入到第i个位置,或删除第i个元素,需要移动n—i个元素。根据概率原理,每个位置插入或删除元素的可能性是相同的,也就说位置靠前,移动元素多,位置靠后,移动元素少。最终平均移动次数和最中间的那个元素的移动次数相等,为(n-1)/2
这说明什么?线性表的顺序存储结构,在存、读数据时,不管是哪个位置,时间复杂度都是0(1);而插入或删除时,时间复杂度都是0(n)。这就说明,它比较适合元素个数不太变化,而更多是存取数据的应用。当然,它的优缺点还不只这些……
线性表顺序存储结构的优缺点
从优点开始说。当我们在使用线性表的时候,我们不需要为表中元素之间的逻辑关系而增加额外的存储空间,而且可以快速的存取表中任意位置的元素。接下来谈谈缺点。如我们所见,如果我们要插入或者删除的元素是在第一个位置,那么无疑的,我们需要移动大量的元素来完成这样的操作,而且限于线性表长度必须小于数组长度,如果我们需要插入大量数据,那么很难保证空间是否充足,而如果我们要删除大量数据的时候,无疑又会造成空间的浪费。
优点:
具有简单、运算方便等优点,特别是对于小线性表或长度固定的线性表,采用顺序存储结构的优越性更为突出;
缺点:
- 顺序存储插入与删除一个元素,必须移动大了的数据元素,以此对大的线性表,特别是在元素的插入和删除很频繁的情况下,采取顺序存储很是不方便,效率低;
- 顺序存储空间容易满,出现上溢,程序访问容易出问题,顺序存储结构下,存储空间不便扩充;
- 顺序存储空间的分配问题,分多了浪费,分少了空间不足上溢。
0 0
- 线性表顺序存储优缺点,线性链表的优缺点
- 线性表顺序存储的优缺点
- 线性表顺序存储结构的优缺点
- 线性表顺序存储结构的优缺点
- 线性表的链式存储结构和顺序存储结构优缺点
- 线性表_顺序存储结构和链式存储结构的优缺点比较(区别)
- 数据结构_线性表_顺序/链式存储优缺点比较
- 【数据结构】对于线性表的顺序和链接两种存储方式的主要优缺点
- 线性表可用顺序表或链表存储的优缺点
- 线性表可用顺序表或链表存储的优缺点
- 数据结构与算法-总结线性表顺序存储结构的优缺点
- 线性表的顺序存储
- 顺序存储的线性表
- 线性表的顺序存储
- 线性表的顺序存储
- 线性表的顺序存储
- 线性表的顺序存储
- 线性表的顺序存储
- 指针与数组相关问题的理解
- 二维数组中行、列个数的表示方法以及sizeof的区分
- 数据结构——单链表的头指针、头结点…
- malloc()和free()的基本概念以及基…
- 单链表结构的定义与声明
- 线性表顺序存储的优缺点
- 线性表的顺序存储结构
- 单链表头指针、头结点、头元结的辨…
- Linux Umask介绍
- 标准I/O缓存的一些理解
- linux中path路径的转换
- 网络编程中的超时检测
- 网络编程IO笔记
- Launcher源码浅析-----Launcher自定义布局属性