下载此文档

SSTF算法或SCAN算法.doc


文档分类:IT计算机 | 页数:约5页 举报非法文档有奖
1/5
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/5 下载此文档
文档列表 文档介绍
#include<> #include<> #define MAXSIZE 100 #include<> #include<> typedef struct node { int num;// ′??ìo? int flag;// ó?óú±ê??ê?·?ò??-·t??1y }Disk; //Disk seq[MAXSIZE] = {{55,0},{58,0},{39,0},{18,0},{90,0},{160,0},{150,0},{38,0},{184,0}} ; Disk seq[MAXSIZE]; int size = 9,currentNum = 100; int sum1 = 0; int sum2 = 0; void Init(int size,Disk seq[MAXSIZE])// ′?μào?μ???êy { int i; srand(time(NULL)); for(i = 0; i<size; i++) { seq[i].num = rand()%199;// 2úéú 0 μ? 199 ????μ?êy×? // scanf("%d",&seq[i].num); //seq[i].num = i*4 ; seq[i].flag = 0; }} void FCFS(int size,Disk seq[MAXSIZE])// ′?2?êy?a???óμ?è??ú { int i; for(i = 0; i<size; i++) { printf(" ·??êμ?DòáDo? %d\n",seq[i].num); }} int FindShortest(int size,int currentNum,Disk seq[MAXSIZE]) { int i,pos1,pos2,min,flag = 0; for(i = 0; i<size; i++) { if(seq[i].flag == 0 && seq[i].num != currentNum) { min = abs(seq[i].num - currentNum); pos1 = i; break; }} for(i = 0; i<size; i++) { if(!seq[i].flag && min > abs(seq[i].num - currentNum)) { flag = 1; min = abs(seq[i].num - currentNum); pos2 = i; }} sum1 += min; if(flag) { seq[pos2].flag = 1; return pos2; } else { seq[pos1].flag = 1; return pos1; }} int SSTF(int size,int start,Disk seq[MAXSIZE])//start ?a?aê?DòáDo? { int i,pos;//pos ?a×??ì????DòáDo?μ????? //pos = FindShortest(size); printf(" ·??êμ?DòáDo? :\n"); for(i = 0; i<size; i++) { pos = FindShortest(size,current

SSTF算法或SCAN算法 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数5
  • 收藏数0 收藏
  • 顶次数0
  • 上传人luyinyzha
  • 文件大小0 KB
  • 时间2016-07-14