小米集团面试题 · 编码实现

小米集团相关面试题,按最终去重题目聚合。

2227 道真题 · 当前筛选命中 168 · 更新 2026-08-05

筛选题目已选:编码实现
第 1 题如果要实现对某个对象集合按特定属性排序,你会如何设计实现? 考察排序实现思路、比较器使用及算法与场景适配编码实现问题拆解技术原理Java第 2 题请手写双向链表的插入功能,并说明测试用例的设计思路。 考察双向链表基本操作实现与测试用例设计能力编码实现问题拆解CC++第 3 题请实现一个算法:给定一个字符串,找出其中最长的回文子串,并说明时间复杂度和空间复杂度。 考察对回文子串问题的算法理解、实现能力和复杂度分析编码实现问题拆解技术原理第 4 题请介绍一下你实现过的Socket网络编程项目,比如一个简单的FTP客户端或服务器。 考察网络编程实践、协议理解和项目复盘能力编码实现项目复盘技术原理C第 5 题请介绍创建线程的几种方式及其区别。 考察Java多线程基础知识与底层理解编码实现技术原理Java第 6 题请写一个算法,将给定字符串分割成所有可能的有效IP地址。 考察回溯算法、字符串解析与边界条件处理编码实现问题拆解技术原理第 7 题在不同屏幕(360px、375px、414px 等)上保持“一行三等分元素”的统一效果,怎么实现? 考察响应式布局中三等分元素的实现与适配能力编码实现技术原理CSS第 8 题请手写实现一个线程安全的环形队列,支持多生产者多消费者场景,并说明其正确性与性能考虑。 考察并发数据结构设计能力、线程安全实现与性能权衡编码实现性能优化技术原理第 9 题请举例说明双指针技术在实际问题中的应用。 考察对双指针算法的理解及其在实际问题中的识别与运用能力编码实现问题拆解技术原理第 10 题请手写代码解决买卖股票的最佳时机问题(只能进行一次买卖),并说明时间复杂度和空间复杂度。 考察经典动态规划问题的基础编码能力与复杂度分析编码实现问题拆解技术原理第 11 题请用两个栈实现一个队列。 考察栈与队列的基本数据结构性质与接口设计能力编码实现技术原理第 12 题实现查找峰值元素的算法:给定一个整数数组,找到任意一个峰值元素并返回其索引。假设相邻元素不相等,且边界外视为负无穷。 考察二分查找的灵活应用与边界处理能力编码实现问题拆解技术原理第 13 题实现 Runnable 接口创建线程和实现 Callable 接口创建线程有什么区别?哪一种接口可以拿到执行的结果? 考察对 Runnable 与 Callable 接口区别及返回结果能力的理解编码实现技术原理第 14 题请解释AQS(AbstractQueuedSynchronizer)中共享模式与独占模式的实现差异,并说明共享模式的核心实现原理。 考察对AQS共享模式核心机制的理解,包括状态管理、队列协作与释放传播。编码实现技术原理Java第 15 题如何计算一棵二叉树所有根到叶子路径的平均高度? 考察二叉树遍历、路径统计与平均值的正确计算编码实现问题拆解技术原理第 16 题给定一个有序数组,请计算每个元素的平方,去重后保持有序输出,要求空间复杂度 O(1)。请说明思路并实现。 考察双指针技巧和原地去重条件下的算法正确性编码实现问题拆解技术原理第 17 题在代码中处理释放资源或清理操作时,你会手写一段逻辑还是使用现成的机制或封装?请说明你的选择和理由。 考察资源管理方式上的工程实践与权衡能力编码实现技术选型方案权衡第 18 题Java如何创建多线程? 考察Java多线程创建方式的掌握程度与理解差异编码实现技术原理Java第 19 题给定一个已左移若干次的升序数组,如何确定它是由原升序数组左移多少次得到的?例如 A=[2,3,1] 的答案为 2 次。 考察对数组旋转问题的理解与最小复杂度解法编码实现问题拆解技术原理第 20 题编写一个左外连接查询的SQL语句。 考察SQL左外连接语法和语义理解编码实现技术原理SQL