0
点赞
收藏
分享

微信扫一扫

华为校招机试 - 最久最少使用缓存(20240508)

题目描述

无线通信移动性需要在基站上配置邻区(本端基站的小区 LocalCell 与周边邻基站的小区 NeighborCelI 映射)关系,

为了能够加速无线算法的计算效率,设计一个邻区关系缓存表,用于快速的通过本小区 LocalCell 查询到邻小区 NeighborCell。

但是缓存表有一定的规格限制,因此到达规格并且需要插入新的数据时,需要删除邻区数据,选择删除邻区数据对象的策略为:

  • 1) 使用次数最少的
  • 2) 如果 1) 返回有多个对象,则选择最久未使用的

请设计并实现一个满足以上要求的数据结构和算法实现。

输入描述

  • 首行以字符 "capacity:" 标识设置一个整数容量
  •  以 "write:" 标识开始进行若干组 [LocalCell,NeighborCell] 邻区数据的输入,每组数据为一行;如果 "write:" 已经存在的 LocalCell 数据,更新其对应的 NeighborCell,并刷新使用时间和次数加 1;如果某邻区数据被删除,缓存表不再保留其记录
  •  以 "read:" 标识进行一次读取 LocalCell 的使用操作,刷新使用时间和次数加 1
  •  最后以 "query:" 标识查询输出操作,输入正整数 LocalCell,查询 NeighborCell
举报

相关推荐

0 条评论