- 2
- 0
- 约5.54千字
- 约 18页
- 2026-06-21 发布于福建
- 举报
第PAGE页共NUMPAGES页
2026年软件工程师招聘面试题及答案解析
一、编程语言与基础(15分,共5题)
1.题目(3分):
请用Python实现一个函数,输入一个正整数n,返回其阶乘的结果。要求:不使用递归或内置的math.factorial函数。
答案解析:
python
deffactorial(n):
result=1
foriinrange(1,n+1):
result=i
returnresult
解析:通过循环累乘实现阶乘,避免递归栈溢出和内置函数依赖。时间复杂度O(n)。
2.题目(3分):
请解释Java中的`volatile`关键字的作用,并说明它与`synchronized`的区别。
答案解析:
`volatile`确保变量的可见性和有序性,但不保证原子性。适用于单线程或无锁场景。
`synchronized`提供原子性、可见性和有序性,适用于多线程同步。
区别:`volatile`轻量级,`synchronized`重量级(影响性能)。
3.题目(3分):
C++中,`const`关键字可以修饰哪些成员?请举例说明。
答案解析:
`const`可修饰:
-变量:如`constinta=5;`
-函数参数:如`voidfunc(constintx);`
-成员函数:如`classA{
原创力文档

文档评论(0)