- 1
- 0
- 约4.4千字
- 约 14页
- 2026-03-30 发布于福建
- 举报
第PAGE页共NUMPAGES页
2026年华为公司技术工程师面试题及解析
一、编程能力测试(共5题,每题20分,总分100分)
1.编程题:字符串反转
题目:编写一个函数,将输入的字符串反转。例如,输入`hello`,输出`olleh`。要求不使用现成的字符串反转函数,只能通过循环实现。
答案:
cpp
stringreverseString(strings){
intleft=0,right=s.size()-1;
while(leftright){
swap(s[left],s[right]);
left++;
right--;
}
returns;
}
解析:
-通过双指针法,从字符串的两端向中间移动,交换对应字符,直到指针相遇。
-时间复杂度O(n),空间复杂度O(1)。
-需要注意边界条件,如空字符串或单字符字符串。
2.编程题:二叉树遍历
题目:给定一个二叉树,编写递归函数实现前序遍历(根节点-左子树-右子树)。假设二叉树节点定义如下:
cpp
structTreeNode{
intval;
TreeNodeleft;
TreeNoderight;
TreeNode(intx):val(x),left(NULL),right(NULL){}
};
答案:
cpp
voidpreord
原创力文档

文档评论(0)