华为转正笔试题及答案.docxVIP

  • 3
  • 0
  • 约1.9千字
  • 约 5页
  • 2026-06-12 发布于山西
  • 举报

华为转正笔试题及答案

一、编程与算法题(总分:50分)

1.题目:给定一个二叉树,返回其节点值的层序遍历(即逐层地,从左到右访问所有节点)。

答案:使用队列实现广度优先搜索(BFS)。首先将根节点入队,然后循环处理队列:取出队首节点,将其值加入结果列表,再将该节点的左子节点和右子节点(若存在)依次入队。直到队列为空,返回结果列表。

2.题目:给定一个整数数组nums和一个目标值target,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标。要求:时间复杂度O(n)。

答案:使用哈希表(HashMap)来解决。遍历数组,对于每个元素`nums[i]`,计算`complement=target-nums[i]`。检查`complement`是否已经在哈希表中。如果在,则返回当前索引`i`和哈希表中存储的索引;如果不在,则将当前元素`nums[i]`及其索引`i`存入哈希表。

3.题目:请补全以下C++代码片段,实现两个整数变量的交换(不使用临时变量)。

```cpp

voidswap(inta,intb){

a=a^b;

b=a^b;

a=a^b;

}

```

答案:该代码利用

文档评论(0)

1亿VIP精品文档

相关文档