阿里算法面试题及详细答案.docxVIP

  • 2
  • 0
  • 约7.84千字
  • 约 9页
  • 2026-06-06 发布于河北
  • 举报

阿里算法面试题及详细答案

一、基础算法题(必考题,侧重代码实操+逻辑思路)

题1:两数之和(阿里校招入门必考题,考察哈希表应用)

题目:给定一个整数数组nums和一个目标值target,请你在该数组中找出和为目标值的那两个整数,并返回它们的数组下标。注意:数组中同一个元素不能使用两遍,假设每种输入只会对应一个答案。

示例:输入nums=[2,7,11,15],target=9→输出[0,1]

详细答案:

核心思路:暴力解法(两层for循环)时间复杂度O(n2),阿里面试中会追问“如何优化”,最优解法用哈希表(字典),空间换时间,将时间复杂度降到O(n)。

关键逻辑:遍历数组时,把“目标值-当前元素”作为key,当前元素下标作为value存入哈希表,每遍历一个元素,先判断当前元素是否在哈希表中,若在,直接返回两个下标;若不在,继续存入,避免重复使用同一个元素。

手写代码(Python,阿里面试常用语言):

python

deftwoSum(nums,target):

#初始化哈希表,存{差值:原元素下标}

hash_map={}

fori,numinenumerate(nums):

#计算当前需要找的差值

complement=target-num

#

文档评论(0)

1亿VIP精品文档

相关文档