联想集团研发工程师面试题及答案详解.docxVIP

  • 0
  • 0
  • 约5.01千字
  • 约 15页
  • 2026-11-05 发布于福建
  • 举报

联想集团研发工程师面试题及答案详解.docx

第PAGE页共NUMPAGES页

2026年联想集团研发工程师面试题及答案详解

一、编程题(共3题,每题20分,总分60分)

1.编程题1(20分):

题目:

请实现一个函数,输入一个字符串,返回该字符串中所有唯一字符的列表(按出现顺序)。例如,输入`leetcode`,返回`[l,e,t,c,o,d,e]`(注意`e`出现了两次,不应包含在结果中)。

要求:

-时间复杂度O(n)

-空间复杂度O(1)(假设字符集固定,如ASCII)

答案与解析:

python

defunique_chars(s:str)-list:

假设字符集为ASCII,使用两个固定长度的数组记录字符出现情况

seen=[False]128

unique=[]

forcharins:

ascii_val=ord(char)

ifnotseen[ascii_val]:

seen[ascii_val]=True

unique.append(char)

returnunique

示例

print(unique_chars(leetcode))#输出:[l,e,t,c,o,d]

解析:

-使用固定长度的布尔数组`seen`记录每个ASCII字符是否出现过,时间复杂度O(n),空间复杂度O(1)。

-遍历字

文档评论(0)

1亿VIP精品文档

相关文档