阿里云面试题 · 编码实现
阿里云相关面试题,按最终去重题目聚合。
共 2357 道真题 · 当前筛选命中 200 道 · 更新 2026-08-05
筛选题目已选:编码实现
考察点
技术栈
第 41 题请用非递归方式实现二叉树的后序遍历。 考察对二叉树遍历的非递归实现能力和栈操作的深入理解第 42 题请实现零钱兑换问题,并说明你的解题思路。 考察完全背包动态规划的理解与实现能力第 43 题请实现 LeetCode 215:在无序数组中找出第 K 个最大元素,并说明你的解法复杂度。 考察快速选择或堆排序的实现能力与复杂度分析第 44 题请实现一个算法,给定整数数组和目标值,找出所有满足三个元素之和等于目标值且下标不同的三元组。 考察数组遍历、双指针去重与边界处理能力第 45 题给定一个字符串 s 和一个字符 c,请计算 s 中每个位置到最近的目标字符 c 的距离,并返回这些最短距离组成的数组。 考察线性扫描与动态规划或双向遍历思路第 46 题请实现深度优先搜索(DFS)遍历一棵树,并说明递归与非递归实现的区别。 考察基础数据结构遍历能力与递归栈理解第 47 题Redis 全局唯一 ID 生成的常见方案有哪些? 考察分布式全局唯一 ID 生成的原理与实现第 48 题算法题:给定一个先升序后降序的数组,找出最大值。写完后向面试官解释思路。 考察二分查找在特殊有序数组中的应用与边界处理第 49 题HTML解析过程中,浏览器是如何具体解析AST(抽象语法树)的? 考察对HTML解析器与AST构建细节的理解第 50 题请实现一个IP限流函数,要求每分钟最多允许访问20次。 考察限流算法的实现能力与边界处理第 51 题手写实现一个 animate 方法,能够驱动元素动画。 考察原生 JavaScript 动画实现、性能优化与边界处理第 52 题返回最长公共子字符串 考察动态规划或滑动窗口解决最长公共子串问题的能力第 53 题请实现一个算法:给定一个数组,其中每个元素代表某天股票的价格,只能买卖一次,求最大利润。 考察动态规划或一次遍历求解最大利润的能力第 54 题请实现一个 LRU 缓存,要求支持 get 和 put 操作,并保证时间复杂度为 O(1)。 考察 LRU 缓存的数据结构设计与编码实现能力第 55 题请讲一下 AQS 的原理和应用。 考察对 Java 并发框架中 AQS 核心机制的理解与应用第 56 题请解释C++中的左值和右值,以及std::move的作用和原理。 考察对C++移动语义基础概念的理解和表达能力第 57 题请手写一个简单工厂模式,并说明它与工厂方法模式的区别。 考察设计模式的理解与应用能力,特别是创建型模式的适用场景第 58 题请实现一个 LRU(最近最少使用)缓存,并说明其关键操作的复杂度。 考察 LRU 缓存设计与实现能力,以及双向链表和哈希表结合使用的理解第 59 题请实现求最大子列和的算法,并说明时间与空间复杂度。 考察算法设计与复杂度分析能力第 60 题手撕千分位格式化问题,将数字按千分位加逗号分隔。 考察字符串与数值处理、边界条件和编码实现能力