nic496 初级会员 楼主 2007-01-07 23:38 私信 引用 编辑 求SSTF算法 操作系统里的一个程序题,永java实现,题目是这样的:有一组数,比如(55,58,39,18,90,160,150,38,164)从100号磁道开始,先访问比它小而且离的最近的一个数(就是90),输出,并计算移动距离(10),一直往上找,直到到18为止,然后往比它大的数找,就是150,一直往上找,计算移动距离,则排列后的顺序是90,58,55,39,38,18,150,160,184,情大侠们帮帮我,马上要交了,拜托了! 每个人都有自己的舞台
beckey 管理员 #1 2007-01-07 23:47 私信 引用 编辑 Copy codeclass lift{ private: int lift_level; int max_level; int min_level; public: lift(int max=10,int min=1,int l=5):lift_level(l),max_level( max),min_level(min){} ~lift(); bool up(int &up_level); bool down(int &down_level); int level() const {return lift_level;} }; bool lift::up(const int &up_level) { if(lift_level+up_level<=max_level){ lift_level+=up_level; return true; } else return false; } bool lift::down(const int &down_level){ if(lift_level-down_level>=min_level){ lift_level-=down_level; return true; } else return false; }
dzh998 超级版主 #2 2007-01-08 11:09 私信 引用 编辑 楼上的 高手 PFPF~ 也一起学习下~ Quote:求助区谢绝纯净水,下不为例! [ 此贴被cai504在2007-01-08 11:57重新编辑 ] 最近评分记录:风云币:-1(cai504)