【判断数据线性度】

文章描述了一个名为getMonotonicity的方法,用于在一个MultiSiteDoubleArray中检测各站点数据的单调性(递增或递减),并根据排序结果设置MultiSiteLongMonoFlag的状态。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  public static MultiSiteLong getMonotonicity(ITestContext _context, MultiSiteDoubleArray _elementArray) {
        MultiSiteLong MonoFlag  = new MultiSiteLong(0);
        for (int site : _context.getActiveSites()) {
            Double[] siteData = new Double[_elementArray.length()];
            for(int element = 0; element < _elementArray.length(); element ++) {
                siteData[element]= _elementArray.getElement(site, element);
            }

            Double[] sorted_siteData = siteData.clone();

            if(siteData[0] > siteData[siteData.length - 1]) {
                //decreasing
                Arrays.sort(sorted_siteData, new Comparator<Double>() {
                    @Override
                    public int compare(Double o1, Double o2) {
                        return   o2.compareTo(o1);
                    }
                });
                System.out.println("decreasing Type: orginal: "+ Arrays.toString(siteData));
                System.out.println("decreasing Type: sort: "+Arrays.toString(sorted_siteData));
                if(Arrays.equals(siteData, sorted_siteData)) {
                    MonoFlag.set(site, 1);
                }else {
                    System.out.println("decreasing, not equal");
                }
            }else {
                //increasing , default
                Arrays.sort(sorted_siteData);
                System.out.println("increasing Type: orginal: "+ Arrays.toString(siteData));
                System.out.println("increasing Type: sort: "+Arrays.toString(sorted_siteData));
                if(Arrays.equals(siteData, sorted_siteData)) {
                    MonoFlag.set(site, 1);
                }else {
                    System.out.println("increasing, not equal");
                }
            }


        }

        return MonoFlag;

    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值