guofuanqilala 2019-12-16 22:05 采纳率: 0%
浏览 426

OPT算法的具体代码解释以及LRU算法及其调用的MyStack栈的具体解释的问题?

主要是在OPT算法中的超出容量list的部分存在问题

    public OPT(int[] arr) {
        for (int i = 0; i < arr.length; i++) {
            if (list.size() < capacity) { // 小于list初始容量
                if (!list.contains(arr[i])) { // list没有该页面,将其添加进list尾部
                    list.add(arr[i]);//列表+1
                } else {
                    continue;
                }
            } else {// 超出list容量
                index[0] = 100;
                index[1] = 101;
                if (!list.contains(arr[i])) { // 下一个页面如果不在list中
                    int a = 0;
                    for (int j = i; j < arr.length; j++) {
                        if (list.contains(arr[j])) { // arr[j]这个页面会在测试数据中会出现较早
                            if (index[0] != list.indexOf(arr[j])) {
                                //indexOf()的用法:查找arr[j]中,第一次出现指定字符串的位置。  位置不是下标为0
                                index[a++] = list.indexOf(arr[j]);// 返回此列表中首次出现的指定元素的索引
                                if (a == 2) {
                                    break;
                                }
                            }
                        }
                    }
                    list.set(noExist(), arr[i]);// 置换掉永不使用的,或许在最长时间内不再访问的页面
                } else { // 下一个页面在list中
                    continue;//列表保持不变
                }
            }
            traverse();//调用traverse函数
        }
        System.out.println("访问页面需从外存调入的次数为:"+(num-1));//计算访问页面需要从外存调入的次数
        System.out.println("缺页率为:"+(1-(float)(num-1)/arr.length));//计算缺页率
    }

以下是我参考的链接文档
https://blog.csdn.net/AdvancingStone/article/details/79110586
我在LRU算法的代码解释以及该程序调用的MyStack中也存在问题,请大佬们给我具体解释,最好有每一句代码的解释,我不懂的不是这些算法的原理,而是整个运算的代码过程,感谢了!

  • 写回答

1条回答 默认 最新

  • zqbnqsdsmd 2019-12-18 00:30
    关注
    评论

报告相同问题?

悬赏问题

  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?