![](https://static.youtibao.com/asksite/comm/h5/images/m_q_title.png)
[单选题]
若长度为n的线性表采用顺序存储结构,在表的第i个位置插入一个数据元素,i的合法值应该是()。
A.i>0
B.i≤n
C.1≤i≤n
D.1≤i≤n+1
查看答案
![](https://static.youtibao.com/asksite/comm/h5/images/solist_ts.png)
A.i>0
B.i≤n
C.1≤i≤n
D.1≤i≤n+1
线性表可用顺序表或链表存储。试问:
(1) 两种存储表示各有哪此主要优缺点?
(2) 如果有n个表同时并存,并且在处理过程中各表的长度会动态发生变化,表的总数也可能自动改变,在此情况下,应选用哪种存储表示?为什么?
(3) 若表的总数基本稳定,且很少进行插人和删除,但要求以最快的速度存取表中的元素,这时,应采用哪种存储表示?为什么?
假设线性表采用顺序存储结构,其类型定义如下:
define ListSize 100
typedef struct{
int data[ListSize];
int length;
}SeqList,*Table;
编写算法,将顺序表L中所有值为奇数的元素调整到表的前端。
已知线性表的存储结构为顺序表,阅读下列算法,并回答问题:
(1)设线性表L=(21,-7,-8,19,0,-11,34,30,-10),写出执行f30(&L)后的L状态;
(2)简述算法f30的功能。
void f30(SeqList*L){
int i,j;
for(i=j=0;i<L—>length;i++)
if(L—>data[i]>=0){
if(i!=j)L—>data[j]=L—>data[i];
j++;
}
L—>length=j;
}