阿里算法笔试题.docxVIP

  • 0
  • 0
  • 约1.11万字
  • 约 14页
  • 2026-08-17 发布于河南
  • 举报

阿里算法笔试题

考试时间:______分钟总分:______分姓名:______

一、编程题

1.给定一个非空整数数组`nums`,其中元素已经按非递减顺序排列,请设计一个函数`removeDuplicates`,原地删除数组中重复的元素,使得每个元素只出现一次。函数返回删除后数组的新长度。

要求:

*不要使用额外的数组空间。

*必须在原地修改输入数组。

*可以返回新长度,但需要将数组的前`newLength`个元素修改为删除重复元素后数组的新内容。

请写出该函数的Java或C++实现。

2.实现一个简单的LRU(LeastRecentlyUsed)缓存机制。它应该支持以下操作:

*`LRUCache(intcapacity)`:初始化缓存容量为`capacity`。

*`intget(intkey)`:如果键存在,则返回键的值,并将其标记为最近最常使用;否则返回-1。

*`voidput(intkey,intvalue)`:如果键已存在,则更新其值并移动它到表示最近最常使用的前端;如果键不存在,则将其添加到缓存中。如果添加操作使缓存容量超出`capacity`,则删除最久未使用的数据。

请用Ja

文档评论(0)

1亿VIP精品文档

相关文档