腾讯技术面试题集及答案详解.docxVIP

  • 1
  • 0
  • 约9.36千字
  • 约 23页
  • 2026-04-02 发布于福建
  • 举报

第PAGE页共NUMPAGES页

2026年腾讯技术面试题集及答案详解

编程题(5题,共30分)

1.题目(6分):

编写一个函数,实现判断一个字符串是否是有效的括号组合(只考虑圆括号`()`、方括号`[]`和花括号`{}`)。例如:

-输入:`()[]{}`→输出:`true`

-输入:`(]`→输出:`false`

-输入:`{[()()]}`→输出:`true`

答案与解析:

答案:

python

defisValid(s:str)-bool:

stack=[]

mapping={):(,]:[,}:{}

forcharins:

ifcharinmapping:

top_element=stack.pop()ifstackelse#

ifmapping[char]!=top_element:

returnFalse

else:

stack.append(char)

returnnotstack

解析:

-使用栈结构存储左括号,遇到右括号时检查栈顶是否匹配。

-栈的初始状态可以设为`#`(哨兵字符),避免栈为空时直接比较。

-时间复杂度:O(n),空间复杂度:O(n)。

2.题目(6分):

给定一个包含重复元素的数组,返回所有不重复的全排列。例如:

-输入:`[1,1,2]

文档评论(0)

1亿VIP精品文档

相关文档