腾讯公司软件开发工程师面试要点与答案.docxVIP

  • 0
  • 0
  • 约7.06千字
  • 约 23页
  • 2026-03-11 发布于福建
  • 举报

腾讯公司软件开发工程师面试要点与答案.docx

第PAGE页共NUMPAGES页

2026年腾讯公司软件开发工程师面试要点与答案

一、编程基础(共5题,每题2分,总分10分)

题目1(2分):

编写一个函数,实现将字符串中的所有空格替换为`%20`。假设字符串的长度足够容纳替换后的结果。

答案:

cpp

includestring

usingnamespacestd;

stringreplaceSpaces(strings){

stringresult;

for(charc:s){

if(c==){

result+=%20;

}else{

result+=c;

}

}

returnresult;

}

解析:

通过遍历字符串,将空格替换为`%20`。时间复杂度为O(n),空间复杂度为O(n),其中n为字符串长度。

题目2(2分):

给定一个整数数组,返回数组中所有唯一的三元组,使得三元组的和为0。

答案:

cpp

includevector

includealgorithm

usingnamespacestd;

vectorvectorintthreeSum(vectorintnums){

vectorvectorintresult;

sort(nums.begin(),nums.end());

intn=nums.size();

for(inti=0;in-2;++i){

if(i0nums[i]==nums[i-1])continue;

intleft=i+1,right=n-1;

while(leftright){

intsum=nums[i]+nums[left]+nums[right];

if(sum==0){

result.push_back({nums[i],nums[left],nums[right]});

while(leftrightnums[left]==nums[left+1])left++;

while(leftrightnums[right]==nums[right-1])right--;

left++;

right--;

}elseif(sum0){

left++;

}else{

right--;

}

}

}

returnresult;

}

解析:

先对数组排序,然后使用双指针法。时间复杂度为O(n2),空间复杂度为O(1)。

题目3(2分):

实现一个LRU(最近最少使用)缓存,支持`get`和`put`操作。

答案:

cpp

includeunordered_map

usingnamespacestd;

classLRUCache{

private:

structNode{

intkey,value;

Nodeprev;

Nodenext;

Node(intk,intv):key(k),value(v),prev(nullptr),next(nullptr){}

};

intcapacity;

unordered_mapint,Nodecache;

Nodehead,tail;

voidaddNode(Nodenode){

node-next=head-next;

node-prev=head;

head-next-prev=node;

head-next=node;

}

voidremoveNode(Nodenode){

NodeprevNode=node-prev;

NodenextNode=node-next;

prevNode-next=nextNode;

nextNode-prev=prevNode;

}

voidmoveToHead(Nodenode){

removeNode(node);

addNode(node);

}

voidpopTail(){

Nodenode=tail-prev;

removeNode(node);

cache.erase(node-key);

deletenode;

}

public:

LRUCache(intcapacity_):capacity(capacity_),head(newNode(0,0)),tail(newNode(0,0)){

head-next=tail;

tail-prev=head;

}

intget(intkey){

if(cache.find(key)==cache.end())

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档