2026年饿了么技术支持面试常见问题及答案.docxVIP

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

2026年饿了么技术支持面试常见问题及答案.docx

第PAGE页共NUMPAGES页

2026年饿了么技术支持面试常见问题及答案

一、编程基础与算法(共5题,每题6分,总分30分)

1.题目:

请实现一个函数,输入一个非负整数`n`,返回`n`的阶乘。要求使用递归和迭代两种方法实现,并比较时间复杂度。

答案:

递归方法:

java

publicstaticlongfactorialRecursive(longn){

if(n==0)return1;

returnnfactorialRecursive(n-1);

}

时间复杂度:O(n),因为每次递归调用都会进行一次乘法操作。

迭代方法:

java

publicstaticlongfactorialIterative(longn){

longresult=1;

for(longi=2;i=n;i++){

result=i;

}

returnresult;

}

时间复杂度:O(n),但常数项较低,实际执行效率可能更高。

解析:

递归方法代码简洁,但存在栈溢出风险(当`n`过大时),且重复计算较多。迭代方法更高效,适合实际业务场景。饿了么业务量大,推荐使用迭代方法。

2.题目:

编写一个函数,删除字符串中的所有重复字符,并返回新字符串。例如,输入`abaccde`,输出`acde`。

答案:

java

publicstaticStringremoveDuplicates(Strings){

char[]arr=s.toCharArray();

Arrays.sort(arr);

StringBuildersb=newStringBuilder();

for(inti=0;iarr.length;i++){

if(i==0||arr[i]!=arr[i-1]){

sb.append(arr[i]);

}

}

returnsb.toString();

}

时间复杂度:O(nlogn),因为排序操作占主导。

解析:

先排序后遍历,可以快速识别重复字符。饿了么系统对性能要求高,可进一步优化为O(n)复杂度(使用哈希集合记录已出现字符)。

3.题目:

实现一个LRU(最近最少使用)缓存,支持`get`和`put`操作。缓存容量为`capacity`,超出容量时需删除最久未使用的元素。

答案:

java

classLRUCache{

privateintcapacity;

privateMapInteger,Nodemap;

privateNodehead,tail;

classNode{

intkey,value;

Nodeprev,next;

}

publicLRUCache(intcapacity){

this.capacity=capacity;

map=newHashMap();

head=newNode();

tail=newNode();

head.next=tail;

tail.prev=head;

}

publicintget(intkey){

Nodenode=map.get(key);

if(node==null)return-1;

moveToHead(node);

returnnode.value;

}

publicvoidput(intkey,intvalue){

Nodenode=map.get(key);

if(node!=null){

node.value=value;

moveToHead(node);

}else{

NodenewNode=newNode();

newNode.key=key;

newNode.value=value;

map.put(key,newNode);

addToHead(newNode);

if(map.size()capacity){

NodetoDel=tail.prev;

map.remove(toDel.key);

removeNode(toDel);

}

}

}

privatevoidmoveToHead(Nodenode){

removeNode(node);

addToHead(node);

}

privatevoidaddToHead(Nodenode){

node.prev=head;

node.next=head.next;

head.next.prev=node;

head.next=node;

}

priv

文档评论(0)

1亿VIP精品文档

相关文档