数据结构 线性表试题
1、
数组A[1…5,1…6]每个元素占5个单元,将其按行优先次序存储在起始地址为1000的连续的内存单元中,则元素A[5,5]的地址为:
A.1120 B.1125 C.1140 D.1145
该数组有6列,每个元素占5个单元,前四行每行6个元素,即所占单元数为:465;第五行A所在位置前有四个元素,其所占单元数为:45;则A[5,5]的地址即为1000+465+45=1140
2、
某线性表采用顺序存储结构,每个元素占4个存储单元,首地址为100,则第12个元素的存储地址为()。
A.144 B.145 C.147 D.148
第12个元素的存储地址为(即为第12个元素的首地址):100+11*4=144
3、
某线性表中最常用的操作是在最后一个元素之后插入一个元素和删除第一个元素,则采用什么存储方式最节省运算时间?
A.单链表 B.仅有尾指针的单循环链表 C.仅有头指针的单循环链表 D.双链表
C虽然可以直接获得第一个元素,但是想要获得最后一个元素却需要遍历整个链表。而B给出的是带有尾结点的单循环链表,这样就可以直接得到最后一个元素,想要得到第一个元素只需要再遍历一个元素就可以,双链表不是循环的,双链表只是一个结点带走前驱和后继两个指针域。 从双链表的第一个结点不能直接到最后一个结点,要从头遍历。反之,通过最后一个结点也不能直接找到第一个结点,要从最后向前遍历。