计算每个排序算法执行的比较次数和份数

时间:2013-03-30 19:38:33

标签: java comparison sorting

在Java中,我如何进行冒泡排序,插入排序,合并排序,外壳排序和快速排序,并制作一个计数器告诉我他们预先形成比较或复制的次数。

我所有的分拣机都是我不知道如何制作一个柜台。

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

这很简单,除非我错了。

对于X排序:

private int copyCounter = 0;
private int comparisonCounter = 0;

public void XSort(){

     // Sorting logic start
     ....
     //Perform comparison operation
     comparisonCounter++;
     ....
     //Perform copy operation
     copyCounter++;
     ....
     //Sorting logic ends

     //Print the values of copyCounter here
}

一旦您的方法完成执行,您将获得所需的计数。假设您已将所有排序实现为单独的类,则需要在上面的各个类中修改排序方法。