计算机编程岗位面试技巧与测试题详解.docxVIP

  • 0
  • 0
  • 约9.58千字
  • 约 28页
  • 2026-02-04 发布于福建
  • 举报

计算机编程岗位面试技巧与测试题详解.docx

第PAGE页共NUMPAGES页

2026年计算机编程岗位面试技巧与测试题详解

一、编程语言基础(5题,每题10分,共50分)

地域针对性:互联网公司,侧重中国一线城市及新一线城市需求。

题目1:

题目(10分):

用Python实现一个函数,输入一个列表(可能包含重复元素),返回一个去重后的新列表,要求保持原始列表中元素的顺序。

示例:

输入:`[1,2,2,3,4,4,5]`

输出:`[1,2,3,4,5]`

要求:不能使用内置的`set`或`dict`去重,需手动实现。

答案与解析:

答案:

python

defremove_duplicates(lst):

seen=[]

result=[]

foriteminlst:

ifitemnotinseen:

seen.append(item)

result.append(item)

returnresult

解析:

1.思路:使用两个列表,`seen`用于记录已出现过的元素,`result`用于存储最终结果。遍历输入列表,若元素不在`seen`中,则加入`seen`和`result`。

2.时间复杂度:O(n2),因为`itemnotinseen`是O(n)操作。

3.优化建议:若允许使用`set`,可先转为`set`再排序恢复顺序,但需注意题目限制。

题目2:

题目(10分):

请写出Java代码,实现一个方法,判断一个整数是否为“完全平方数”。例如:25是,因为√25=5;26不是。

要求:不能使用第三方库,需手动计算。

答案与解析:

答案:

java

publicclassPerfectSquare{

publicstaticbooleanisPerfectSquare(intnum){

if(num0)returnfalse;

longleft=0,right=num;

while(left=right){

longmid=left+(right-left)/2;

longsquare=midmid;

if(square==num)returntrue;

if(squarenum)left=mid+1;

elseright=mid-1;

}

returnfalse;

}

}

解析:

1.思路:使用二分查找法。因为平方根单调递增,所以可以在[0,num]区间内查找。

2.关键点:

-避免整数溢出,使用`long`类型计算`midmid`。

-查找结束条件是`leftright`,返回`false`。

3.时间复杂度:O(logn)。

题目3:

题目(10分):

用C++实现一个简单的LRU(最近最少使用)缓存,支持`get`和`put`操作。缓存容量固定,超出时淘汰最久未使用的元素。

要求:可使用`std::list`和`std::unordered_map`。

答案与解析:

答案:

cpp

includeunordered_map

includelist

classLRUCache{

public:

structNode{

intkey;

intvalue;

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

};

LRUCache(intcapacity):capacity_(capacity){}

intget(intkey){

autoit=cache_map.find(key);

if(it==cache_map.end())return-1;

//Movetofront

cache_list.erase(it-second);

cache_list.push_front(Node(key,it-second-second));

it-second=cache_list.begin();

returnit-second-value;

}

voidput(intkey,intvalue){

autoit=cache_map.find(key);

if(it!=cache_map.end()){

//Update

cache_list.erase(it-second);

cache_list.push_front(Node(key,value));

it-second=cache_list.begin();

}else{

if(cache_list.size()==capacity_){

//Evict

in

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档