首页 > 编程语言 >华为OD机试 C++ - 文件缓存系统

华为OD机试 C++ - 文件缓存系统

时间:2024-06-11 14:31:11浏览次数:21  
标签:文件 缓存 get OD 系统 C++ 访问 机试

文件缓存系统

前言:本专栏将持续更新互联网大厂机试真题,并进行详细的分析与解答,包含完整的代码实现,希望可以帮助到正在努力的你。关于大厂机试流程、面经、面试指导等,如有任何疑问,欢迎联系我,wechat:steven_moda;email:[email protected];备注:CSDN。


题目描述

请设计一个文件缓存系统,该文件缓存系统可以指定缓存的最大值(单位为字节)。文件缓存系统有两种操作:

  • 存储文件(put)
  • 读取文件(get)

操作命令为:

  • put fileName fileSize
  • get fileName

存储文件是把文件放入文件缓存系统中;读取文件是从文件缓存系统中访问已存在,如果文件不存在,则不作任何操作。当缓存空间不足以存放新的文件时,根据规则删除文件,直到剩余空间满足新的文件大小位置,再存放新文件。具体的删除规则为:文件访问过后,会更新文件的最近访问时间和总的访问次数,当缓存不够时,按照第一优先顺序为访问次数从少到多,第二顺序为时间从老到新的方式来删除文件。

输入描述

第一行为缓存最大值 m(整

标签:文件,缓存,get,OD,系统,C++,访问,机试
From: https://blog.csdn.net/qq_40642440/article/details/139598083

相关文章

  • 由AtCoder_ABC357D引发的除法同余学习
    鉴于最近的Atcoder周赛又出现除法求余,下定决心学习逆元相关内容同余概述定义同余定义:若a和b是整数,且m|(a-b),则称a和b模m同余。即两者除以m得到的余数相同。剩余系:一个模m完全剩余系是一个整数集合,任何一个整数恰好与该集合中的一个元素模m同余。例如0,1,...,m-1的集......
  • antdv弹窗modal可拖动方法
    this.$nextTick(()=>{constmodal:any=document.getElementsByClassName('ant-modal')[0]constcontent:any=document.getElementsByClassName('ant-modal-content')[0]letleft=0lettop=0......
  • C++中的继承
    目录继承的概念及定义继承的概念继承定义定义格式 继承关系和访问限定符继承基类成员访问方式的变化基类和派生类对象赋值转换继承中的作用域派生类的默认成员函数继承与友元继承与静态成员        我们都知道,面向对象的三个基本特征是:封装,继承以及多态......
  • C/C++单元测试如何解决非虚函数对象依赖
    如何解决非虚函数对象依赖随着事物的接触越来越多,了解的越来越深入,我们总会发现一些新的问题或者不足。就像前文提到的一样,我们在面对有对象的虚函数依赖的时候,可以使用gmock框架来为我们提供方便的模拟期望值,以便我们能撇除外界的影响(依赖)从逻辑上设计单元测试并持续的......
  • Leetcode419 甲板上的战舰
    最近以来,我在力扣上坚持完成每天一题,今天系统推的题目为《甲板上的战舰》,在此记录一下。题目描述如下:给你一个大小为mxn的矩阵board表示甲板,其中,每个单元格可以是一艘战舰'X'或者是一个空位'.',返回在甲板board上放置的战舰的数量。战舰只能水平或者垂直放置在......
  • nw.js 如何调用activeX控件 (控件是C++编写的dll文件)
    ......
  • 华为OD刷题C卷 - 每日刷题 22(计算面积、绘图机器,信道分配)
    1、(计算面积、绘图机器):这段代码是解决“计算面积、绘图机器”的问题。它提供了一个Java类Main,其中包含main方法,用于计算绘图机器按照给定指令绘制直线所形成的图形面积。main方法首先读取指令数量n和横坐标终点值end_X。然后,初始化面积和area为0,以及上一个点的坐标last_X......
  • 华为OD刷题C卷 - 每日刷题 23(提取字符串中的最长表达式,模拟目录管理功能 - 完整实现)
    1、提取字符串中的最长表达式目标是从一个给定的字符串中提取出最长的合法简单数学表达式,并计算该表达式的值。如果存在多个同样长度的合法表达式,则选择第一个出现的表达式进行计算。简单数学表达式的规则:只包含0-9的数字和+、-、*三种运算符。所有数字的计算结果不超过......
  • 深入理解C++中的常量和宏:const、#define、typedef和inline详解
    一、const 与 #define 的区别1.定义方式和类型const 定义的常量是有类型的变量。#define 只是文本替换,不带类型。constintMAX_VALUE=100;//MAX_VALUE是一个整数类型的常量#defineMAX_VALUE100//MAX_VALUE是一个文本替换,它不关联任何类型2.生效......
  • acwing 653 钞票(c++)
    题目描述:在这个问题中,你需要读取一个整数值并将其分解为多张钞票的和,每种面值的钞票可以使用多张,并要求所用的钞票数量尽可能少。请你输出读取值和钞票清单。钞票的可能面值有100,50,20,10,5,2,1。经过实验证明:在本题中,优先使用面额大的钞票可以保证所用的钞票总数量最......