大厂高频算法面试题(含详细答案·实战版).docxVIP

  • 3
  • 0
  • 约7.1千字
  • 约 10页
  • 2026-06-15 发布于河北
  • 举报

大厂高频算法面试题(含详细答案·实战版).docx

大厂高频算法面试题(含详细答案·实战版)

适用岗位:Java/Go/Python后端、前端、客户端、测试开发、数据开发

难度分布:简单40%、中等50%、困难10%(面试主流难度)

第一部分:数组与双指针(面试最高频)

1.两数之和(简单·必考)

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

解题思路:

暴力双层循环可以解决,但面试会被问优化。最优解是哈希表一次遍历,遍历过程中先检查「target-当前值」是否已经存在哈希表中,存在则直接返回下标,不存在则把当前值和下标存入哈希。时间复杂度O(n),空间O(n)。

标准答案(Python)

python

deftwoSum(nums,target):

hash_map={}

foridx,numinenumerate(nums):

#找差值

diff=target-num

ifdiffinhash_map:

return[hash_map[diff],idx]

#不存在则存入

hash_map[

文档评论(0)

1亿VIP精品文档

相关文档