takooya 2017-11-13 07:28 采纳率: 0%
浏览 937

如何比较"相同功能不同代码"的性能哪个好,测试工具有什么

想要一种测试工具,去体验不同排序方法对内存和时间的使用,并体会出最好的排序方法,而且这种测试工具最好不要局限于比较排序,最好是java SE的项目都可以比较的那种.
另附我用java写的排序方法,如果方便,想请教哪个更好,如何分析:

private static void sortThird(int[] num) {
    for(int i=1;i<num.length;i++) {
        int j=i;
        while(true){
            if(j>0&&num[j]<num[j-1]) {
                //change
                num[j] = num[j] ^ num[j-1];
                num[j-1] = num[j] ^ num[j-1];
                num[j] = num[j] ^ num[j-1];
                j--;
            }else {
                break;
            }
        }
    }
    System.out.println("sortThird:"+Arrays.toString(num));
}

private static void sortSec(int[] num) {
    for(int i=0;i<num.length;i++) {
        for(int j=0;j<i;j++) {
            if(num[i]<num[j]) {
                //change
                num[i] = num[i] ^ num[j];
                num[j] = num[i] ^ num[j];
                num[i] = num[i] ^ num[j];
            }
        }
    }
    System.out.println("sortSecond:"+Arrays.toString(num));
}

private static void sortFir(int[] num) {
    for (int j = 0; j < num.length - 1; j++) {
        for (int i = 0; i < num.length-1; i++) {
            if (num[i] > num[i + 1]) {
                num[i] = num[i] ^ num[i + 1];
                num[i + 1] = num[i] ^ num[i + 1];
                num[i] = num[i] ^ num[i + 1];
            }
        }
    }
    System.out.println("sort First:"+Arrays.toString(num));
}
  • 写回答

5条回答 默认 最新

  • data_tester 2017-11-13 07:52
    关注

    看完你的问题,感觉代码也是相同的,只是想测试函数顺序不同对功能有无影响?
    如果以编程的角度看你放的那段代码是没有影响的。如果更复杂的代码,就要考虑结构的优化。。

    评论

报告相同问题?

悬赏问题

  • ¥15 想问一下stata17中这段代码哪里有问题呀
  • ¥15 flink cdc无法实时同步mysql数据
  • ¥100 有人会搭建GPT-J-6B框架吗?有偿
  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决