程序员面试题目及详细答案.docxVIP

  • 1
  • 0
  • 约8.4千字
  • 约 10页
  • 2026-04-17 发布于河北
  • 举报

程序员面试题目及详细答案

一、基础编程题(必考题,考察代码功底和逻辑思维)

题目1:两数之和(简单,高频)

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

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

详细答案

思路:最直观的是暴力遍历(两层for循环),但时间复杂度太高(O(n2)),实际开发中更常用哈希表(HashMap)优化,时间复杂度降至O(n)。核心逻辑:遍历数组时,将当前元素的补数(target-当前元素)存入哈希表,同时判断当前元素是否在哈希表中,若在则直接返回下标。

代码(Java):

java

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

//哈希表存储:key=数组元素,value=元素下标

HashMapInteger,Integergt;map=newHashMap();

for(inti=0;inums.length;i++){

//计算当前元素的补数

intcomplement=tar

文档评论(0)

1亿VIP精品文档

相关文档