zoukankan      html  css  js  c++  java
  • Algs4-1.4.39 改进倍率测试的精度

    1.4.39 改进倍率测试的精度。修改DoublingRation,使它接受另一个命令行参数来指定对于每个N值调用timeTrial()方法的次数。用程序对每个N执行10、100和1000遍实验并评估结果的准确程度。
    答:
    图片
    public class E1d4d39
    {
      public static double timeTrial(int N)
      {
        int MAX=1000000;
        int[] a=new int[N];
        for (int i=0;i<N;i++)
          a[i]=StdRandom.uniform(-MAX,MAX);
        Stopwatch timer=new Stopwatch();
        int cnt=ThreeSum.count(a);
        return timer.elapsedTime();
      }
      //
      public static void main(String[] args)
      {
        //
        double prev=0.0;
        double time=0.0;
        for (int i=10;i<=1000;i=10*i)
        {
           prev=0.0;
           for(int j=1;j<=i;j++)
               prev=prev+timeTrial(125);
       //

        for (int N=250;N<=8000;N+=N)
        {
          time=0.0;
          for(int k=1;k<=i;k++)
          {
             time=time+timeTrial(N);
          }//for k
          StdOut.printf("runTime=%5d N=%6d timeSecond=%7.1f  ratio=%5.1f ",i,N,time/i,time/prev);
          prev=time;
        }//for N
      }//for i
    }//end main
    }//end class

  • 相关阅读:
    SpringMVC+Huploadify 实现文件上传下载
    删除代码中的注释
    shiro框架学习(二)
    shiro框架学习(三)
    shiro框架学习(一)
    数据库操作导入导出以及加快查询速度
    判断字符串中是否是数字
    分数判断
    异常处理的课后
    多态的课后总结
  • 原文地址:https://www.cnblogs.com/longjin2018/p/9854558.html
Copyright © 2011-2022 走看看