链表不具有的特点是( )。
这题考数据结构里链表和数组的核心区别。拿到题先想:数组能直接算地址访问第i个,链表是挨个next指针往后找,所以‘随机访问’是链表的死穴,其他三个选项全是链表优点,直接锁定B。
学生容易把‘空间与长度成正比’理解错,以为链表因为要存指针所以浪费空间,其实相比数组它确实省了连续空间,只是多了指针域,但总空间仍随长度线性增长,所以D是对的。还有人会纠结‘不必事先估计空间’,觉得链表动态分配不灵活,其实这正是链表优势,不用一次性申请一大块。最坑的是把‘随机访问’当成链表能做到的,只要记住链表只能顺序访问,就能避开这个陷阱。
链表是动态存储结构,节点在内存中分散,每个节点含数据域和指针域(指向下一个节点)。数组则是连续内存,下标直接对应地址。
命题人爱考‘链表 vs 数组’的对比,尤其是‘随机访问’这一条,因为这是两者最本质的区别。选项A、C、D都是链表的优点,只有B是它的致命弱点。