拿下技术面上传简历

在一个长度为 100 万的整型序列上,需要执行 10 万次操作。其中 90% 是在序列头部插入一个元素,10% 是按索引随机读取一个元素。你会选择数组还是单链表?请分别估算两种选择下这 10 万次操作的相对代价(不需要精确时间,说明量级即可)。如果把比例改成 90% 随机读取、10% 头部插入,你的选择会变吗?为什么?

数据结构与算法线性与树结构校招知识点 1 个

面试官在考什么

判断候选人是否真正理解数组和链表的内存布局、操作代价,以及能否根据实际访问模式而不是背复杂度表来选型。

数组与链表

回答框架 · 前两步

  1. 数组连续内存,随机访问 O(1),头部插入 O(n) 需要搬移后续元素。
  2. 单链表节点分散,随机访问 O(n) 需要从头遍历,头部插入 O(1) 只需改指针。

还有 3 条答案要点、 3 层追问、 5 个常见坑, 以及针对你简历的追问路径,在定制报告里。

上传简历,生成我的题库先看示例报告

延伸阅读

想看这个方向的整体准备路线? 进入「数据结构与算法」方向页

同一能力域的其他题