修改DoublingTest,使用StdDraw产生类似于正文中的标准图像和对数图形,根据需要调整比例使图像总能够充满窗口的大部分区域
对库函数StdDraw的理解和运用,
根据图像分析增长的数量级
x坐标是规模n取对数
y坐标是耗时time取对数
import edu.princeton.cs.algs4.StdDraw;
import edu.princeton.cs.algs4.StdRandom;
import edu.princeton.cs.algs4.ThreeSum;
/**
* @description: ${description}
* @create: 2019-02-20
**/
public class DoublingTest {
public static double timeTrial(int n){
int max=1000000;
int[] a = new int[n];
for(int i=0;i
前两个数250和500不是很准
后面四个数字1000 2000 4000 8000还是挺准的
根据数据计算斜率
double k1=(Math.log(12.152)-Math.log(1.604))/(Math.log(4000)-Math.log(2000));
double k2=(Math.log(92.993)-Math.log(12.152))/(Math.log(8000)-Math.log(4000));
k1=2.92 k2=2.93
接近3.说明是3-sum立方级别的关系
写的比较粗糙