数据结构练习题——线性表

一、判断正误

(  F  )1. 顺序存储方式的优点是存储密度大,且插入、删除运算效率高。

(  T  )2. 线性表在物理存储空间中也一定是连续的。

(  F  )3. 线性表在顺序存储时,逻辑上相邻的元素未必在存储的物理位置次序上相邻。

(  F  )4. 顺序存储方式只能用于存储线性结构。

(  F  )5. 线性表的逻辑顺序与存储顺序总是一致的。

 

二、单项选择题

(  C   )1.数据在计算机存储器内表示时,物理地址与逻辑地址相同并且是连续的,称之为:

(A)存储结构      (B)逻辑结构      (C)顺序存储结构     (D)链式存储结构

(   B  )2. 一个向量第一个元素的存储地址是100,每个元素的长度为2,则第5个元素的地址是     

(A)110     (B)108         (C)100      (D)120

(   A  )3. 在n个结点的顺序表中,算法的时间复杂度是O(1)的操作是:

  1. 访问第i个结点(1≤i≤n)和求第i个结点的直接前驱(2≤i≤n)
  2. 在第i个结点后插入一个新结点(1≤i≤n)
  3. 删除第i个结点(1≤i≤n)         

(D) 将n个结点从小到大排序

(  B   )4. 向一个有127个元素的顺序表中插入一个新元素并保持原来顺序不变,平均要移动  个元素

(A)8     (B)63.5         (C)63     (D)7

(  C   )5.线性表是具有n个________的有限序列(n>0)。 

A.表元素    B.字符    C.数据元素     D.数据项   

 

 

三、编程题

1.请写一个算法将顺序存储结构的线性表(a1...an)逆置为(an...a1),要求使用最少的附加空间。

 

 

Status ListOppose(SqList &L)

{   // 颠倒顺序表中的数据元素

    int i;

    ElemType x;

    for(i=0; i< L.length/2; i++)       // 只需要遍历原表的一半就可以实现数据元素位置的交换

    {

        x = L.elem[i];

        L.elem[i] = L.elem[L.length-i-1];        // 数据元素交换->逆置

        L.elem[L.length-i-1] = x;               

    }

    return OK;

}

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值