• 大小: 2KB
    文件类型: .cpp
    金币: 1
    下载: 0 次
    发布日期: 2021-01-11
  • 标签: lru.cpp  

资源简介

LRU算法c语言实现,采用了堆栈,简洁,明了,思路清晰

资源截图

代码片段和文件信息

#define MAXSIZE 15
#include 
#include  
void main()
{
int input=0; //用于输入作业号
int worknum=0; //输入的作业个数
int storesize=0; //系统分配的存储区块数
int interrupt=0; //缺页中断次数
int stack[MAXSIZE]; //栈,LRU算法的主要数据结构
int workstep[MAXSIZE]; //记录作业走向
/*初始化*/
for(int i=0;i{
stack[i]=0;
workstep[i]=0;
}
printf(“请输入存储区块数:“);
scanf(“%d“&storesize);
printf(“请输入作业的页面走向(输入0结束):\n“);
for(int j=0;j{

printf(“页面号%d “j+1);
scanf(“%d“&input);
workstep[j]=input;
if(input==0)
{
printf(“输入结束!\n“);
break;
}
worknum++;
}
if(workstep[0]==0)
{
printf(“未输入任何作业,系统将退出!\n“);
return;
}



printf(“置换情况如下:\n“);
for(int k=0;k{
/*在栈中找相等的页号或空位置*/



for(int l=0;l{
/*是否有相等的页号*/
if(stack[l]

评论

共有 条评论