联想工程师面试技巧与问题解析.docxVIP

  • 1
  • 0
  • 约4.56千字
  • 约 14页
  • 2026-03-10 发布于福建
  • 举报

第PAGE页共NUMPAGES页

2026年联想工程师面试技巧与问题解析

一、编程能力测试(共5题,每题10分,总分50分)

1.题目:

编写一个函数,实现将一个32位无符号整数的二进制表示中1的个数进行计算并返回。例如,输入`11`(二进制为`1011`),返回`3`。要求不使用内置函数,仅用位运算实现。

答案与解析:

python

defcount_bits(num:int)-int:

count=0

whilenum:

count+=num1

num=1

returncount

解析:

通过位运算实现,每次判断最低位是否为1(`num1`),然后右移一位(`num=1`),直到`num`为0。时间复杂度为O(1),因为32位整数最多32次操作。联想工程师面试中常考察位运算,考察候选人对底层原理的理解。

2.题目:

实现一个简单的LRU(LeastRecentlyUsed)缓存,支持`get`和`put`操作。要求空间复杂度为O(n),时间复杂度为O(1)。

答案与解析:

python

classLRUCache:

def__init__(self,capacity:int):

self.capacity=capacity

self.cache={}

self.order=[]

defget(sel

文档评论(0)

1亿VIP精品文档

相关文档