华为技术面试经验及常见问题解答.docxVIP

  • 0
  • 0
  • 约6.84千字
  • 约 21页
  • 2026-10-20 发布于福建
  • 举报

第PAGE页共NUMPAGES页

2026年华为技术面试经验及常见问题解答

一、编程能力测试(3题,每题10分,共30分)

题目1:

请用C语言实现一个函数,输入一个整数数组,返回数组中所有奇数元素的平方和。要求时间复杂度为O(n),空间复杂度为O(1)。

c

//示例输入:arr=[1,2,3,4,5]

//示例输出:1^2+3^2+5^2=35

答案:

c

includestdio.h

intsumOfOddSquares(intarr[],intsize){

intsum=0;

for(inti=0;isize;i++){

if(arr[i]%2!=0){

sum+=arr[i]arr[i];

}

}

returnsum;

}

intmain(){

intarr[]={1,2,3,4,5};

intresult=sumOfOddSquares(arr,5);

printf(Sumofoddsquares:%d\n,result);

return0;

}

解析:

1.时间复杂度分析:遍历数组一次,每个元素只计算一次,时间复杂度为O(n)。

2.空间复杂度分析:只使用了一个变量`sum`存储结果,空间复杂度为O(1)。

3.关键点:检查奇

文档评论(0)

1亿VIP精品文档

相关文档