1、线性表是具有n个数据元素的有限序列
2、顺序存储结构特点
答案
1、随机访问 – 能在O(1)时间内找到第i个元素 – 优点
2、存储密度高-优点
3、拓展容量不方便
4、插入、删除数据元素不方便
3、区别顺序表和一维数组
答案
顺序表是顺序存储的线性表,表中所有元素类型必须相同,且连续存放,逻辑上相邻的元素物理位置上也相邻
一维度数组元素可以不连续存放,此外栈、队列、树的逻辑结构也可用一维数组表示
4、线性表的顺序存储结构是一种随机存取结构(读写方式),注意:容易混淆顺序存取的存储结构
5、顺序表的随机存取特性指的是什么?
答案
查找序号为 i 的元素的时间与顺序表中元素的个数n无关
6、顺序表所占用的存储空间大小与什么有关
答案
1、表长;2、元素类型;3、元素中各字段的类型(这里说的是元素为结构体类型),则元素中各字段的类型也会影响存储空间的大小
7、在顺序表上比在链表上效率高的多的操作是什么?
答案
1、输出第 i 个的元素值;2、交换两个元素之间的值(3步)
8、在一个长度为n的顺序表中删除第 i 个元素,则需要向移动多少个元素
答案
9、在第 i 个位置插入一个元素,则需要移动多少位元素
答案
需要移动n – i+1个元素
10、顺序表的插入算法实现原理(动态分配方式实现)- 将数据复制到新的区域,释放原来的内存空间
11、顺序表中查找指定元素可以采用顺序查找法或者折半查找,时间复杂度最少为O(logn)
顺序表的静态分配与动态分配方式的区别
特性 | 静态分配 | 动态分配 |
---|---|---|
内存管理 | 由系统自动管理 | 需要手动管理(malloc /realloc /free ) |
空间扩展性 | 固定大小,无法扩展 | 可动态扩容,适应数据变化 |
适用场景 | 数据量已知且固定的场景 | 数据量不确定或需频繁调整的场景 |
性能 | 无需扩容,无额外开销 | 扩容时需复制数据,有一定开销 |
风险 | 可能导致空间浪费或不足 | 可能引发内存泄漏或溢出 |
本网站原创文章版权归何大锤的狂飙日记所有。发布者:何大锤,转转请注明出处:何大锤的博客