以下哪种情况使用链表比数组更合适?
仔细审题,明确已知条件和所求目标,运用相关知识点逐项分析。
审题时注意题目要求(选正确还是选错误),避免因审题不清失分。涉及代码的题目要逐行分析变量变化。
【考点】链表与数组的对比|插入/删除操作效率|随机访问效率。命题人专卡学生死记硬背:链表插入无移位、数组插入需搬移元素,这是数据结构选型的核心权衡点。
审题核心是"频繁插入/删除"。数组在中间插入需搬移后续元素,时间复杂度O(n);链表只需改指针,时间复杂度O(1)。题目问"更合适",即对比优势场景,锁定B。
A选项陷阱在于"读多写少"暗示数组缓存友好,但链表同样支持读多写少;C选项陷阱在于"随机访问"对链表是O(n),但题目只问插入删除;D选项是数组的物理存储约束,链表节点可分散。命题人把数组的三大优势分别伪装成选项,考生若只知"链表快插删"而不理解数组优势,极易误选A或C。
若将"频繁插入"改为"频繁随机访问",答案立刻变成A或C;若强调"存储空间必须连续",则锁定D。命题人想考的是"数据结构选型依据",而非单纯记忆。刷到类似题时,先问自己"命题人想考我什么"。