百度算法面试高频真题及详细答案.docxVIP

  • 2
  • 0
  • 约9.42千字
  • 约 10页
  • 2026-06-24 发布于河北
  • 举报

百度算法面试高频真题及详细答案

一、编程基础题(必考点)

1.两数之和(百度校招入门题)

题干:给定整数数组nums和目标值target,找出和为target的两个整数下标(数组无重复解,元素不可复用)。

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

详细解析:

• 暴力法双重循环O(n²)效率过低,面试中需直接给出优化方案

• 核心思路:用哈希表缓存已遍历元素及下标,遍历当前元素时计算补数(target-当前值)

◦ 补数存在于哈希表→直接返回缓存下标和当前下标

◦ 补数不存在→缓存当前元素及下标

• 工程细节:需处理空数组、单个元素等边界case,避免数组越界

Java手写代码:

publicint[]twoSum(int[]nums,inttarget){

if(nums==null||nums.length){

thrownewIllegalArgumentException(无效输入);

}

HashMap,Integermap=newHashMap(inti=0;ii++){

intcomplement=target-nums[i];

if(map.con

文档评论(0)

1亿VIP精品文档

相关文档