- 0
- 0
- 约7.56千字
- 约 22页
- 2026-11-04 发布于福建
- 举报
第PAGE页共NUMPAGES页
2026年程序员面试攻略与常见问题解答
一、编程语言基础(5题,每题10分,共50分)
题目1:
请用Java编写一个方法,实现判断一个字符串是否为回文字符串。例如,输入level返回true,输入hello返回false。要求说明时间复杂度和空间复杂度。
答案1:
java
publicbooleanisPalindrome(Strings){
if(s==null||s.length()==0)returntrue;
intleft=0,right=s.length()-1;
while(leftright){
if(s.charAt(left)!=s.charAt(right))returnfalse;
left++;
right--;
}
returntrue;
}
解析1:
-时间复杂度:O(n),只需遍历字符串一次。
-空间复杂度:O(1),只使用常数额外空间。
-优化:可忽略大小写和空格,如Level也应返回true,此时需额外处理。
题目2:
请用Python实现一个函数,接收一个列表,返回列表中所有唯一出现一次的元素。例如,输入[1,2,2,3,4,4]返回[1,3]。
答案2:
python
defunique_elements(nu
原创力文档

文档评论(0)