设线性表为(a1,a2,⋯,an),采用顺序存储结构,则下列操作中时间复杂度为 O(1)的是()。
A.Insert(L,i,e):插入操作,在线性表 L的第i个元素的前面插入一个元素 e。
B.Get(L,i),取元素操作,返回线性表 L中的第i个元素。
C.Delete(L,i):删除操作,将线性表 L的第i个元素删除。
D.Locate(L,x):定位操作,给定值 x,判断线性表中是否有和 x相同的元素。
A.Insert(L,i,e):插入操作,在线性表 L的第i个元素的前面插入一个元素 e。
B.Get(L,i),取元素操作,返回线性表 L中的第i个元素。
C.Delete(L,i):删除操作,将线性表 L的第i个元素删除。
D.Locate(L,x):定位操作,给定值 x,判断线性表中是否有和 x相同的元素。
设线性表为(a1,a2,⋯,an),可采用顺序存储结构和链式存储结构,下列叙述正确的是()。
A.链式存储需要增加指针,用以表达元素之间的先后关系。
B.同一操作,算法的时间复杂性是确定的,与数据的存储结构无关。
C.对于线性表,采用顺序存储所需要的空间更小,因此,顺序存储比链式存储更好。
D.在顺序存储结构中,元素之间的关系通过元素的位置来表达。
E.同一操作,不同的存储结构,算法的时间复杂性可能不同。
F.链式存储中求元素的个数的时间复杂性为 O(1)。
一线性表表示为:(a1,a2,…,an),其中每个ai代表一个______。a1称为______结点,an称为______结点,i称为ai在线性表中的______。对任意一对相邻结点ai,ai+1(1≤i≤n),ai称为ai+1的直接______,ai+1称为ai的直接______。
已知p是指向单向循环链表最后一个结点的指针,试编写只包含一个循环的算法,将线性表(a1,a2,…,an-1,an)改造为(a1,a2,…,an-1,an,an-1,…,a2,a1)。【北京理工大学2005十四、1(5分)】
线性表(a1,a2,…,n)以链式存储方式存储时,访问第i位置元素的时间复杂度为()。
A.O(i)
B.O(1)
C.O(n)
D.O(i一1)
设有线性表A=(a1,a2,…am),B=(b1,b2,…bn)。试写一合并A、B为线性表C的算法,使得
假设A.B均以单链表为存储结构(并且m、n显式保存)。要求C也以单链表为存储结构并利用单链表A、B的结点空间。
试分别以顺序表和单链表作存储结构,各写一个实现线性表的自身(即使用尽可能少的附加空间)逆置的算法,在原表的存储空间内将线性表(a1,a2,…an)逆置为(an,…a2,a1)。
设L1={0,1},L2={(a1,a2)|a1,a2∈L1},证明(L2,∨,∧)是格,其中二元运算∨,∧定义为对(a1,a2),(b1,b2)∈L2,有
(a1,a2)∧(b1,b2)=(min(a1,b1),min(a2,b2)),
(a1,a2)∨(b1,b2)=(max(a1,b1),max(a2,b2)).