2026年腾讯技术面试常见问题及答案.docxVIP

  • 0
  • 0
  • 约5.18千字
  • 约 17页
  • 2026-11-04 发布于福建
  • 举报

第PAGE页共NUMPAGES页

2026年腾讯技术面试常见问题及答案

一、编程基础与算法(共5题,每题10分)

1.题目:

实现一个函数,输入一个整数数组,返回其中出现次数超过一半的元素。假设数组非空,且一定存在这样的元素。

答案:

cpp

intmajorityElement(vectorintnums){

intcount=0;

intcandidate=0;

for(intnum:nums){

if(count==0){

candidate=num;

}

count+=(num==candidate)?1:-1;

}

returncandidate;

}

解析:

采用“多数投票算法”,初始时假设第一个数为候选数,遍历时若与候选数相同则计数加一,否则减一。当计数为零时,更新候选数为当前数。由于多数元素出现次数超过一半,最终候选数即为所求。

2.题目:

给定一个字符串,判断其是否是回文串(忽略非字母数字字符,不区分大小写)。

答案:

cpp

boolisPalindrome(strings){

intleft=0,right=s.size()-1;

while(leftright){

while(leftright!isalnum(s[left]))left++

文档评论(0)

1亿VIP精品文档

相关文档