小编Joh*_*ano的帖子

Quicksort比Mergesort慢?

我昨天正在努力实现一个快速排序,然后我运行它,期望比Mergesort更快的运行时间(我也已实现).我运行了两个,虽然快速排序对于较小的数据集<100个元素更快(并且我确实验证了它的工作原理),但mergesort很快就成为了更快的算法.有人告诉我,quicksort几乎总是比mergesort"更快",我理解这个话题有一些争论,但我至少预计它会比这更接近.对于数据集> 10000个元素,mergesort的速度提高了4倍以上.这是预期的,还是我的快速排序代码中有错误?

归并排序:

public static void mergeSort(int[ ] e)
{
    if (e.length <= 1) return;
    int[] first = new int[e.length/2];
    int[] second = new int[e.length - first.length];
    System.arraycopy(e, 0, first, 0, first.length);
    System.arraycopy(e, first.length, second, 0, second.length);
    mergeSort(first);
    mergeSort(second);
    System.arraycopy(merge(first, second), 0, e, 0, e.length);
}

private static int[] merge(int[] first, int[] second) {
    int iFirst = 0;
    int iSecond = 0;
    int iCombined = 0;

    int[] combined = new int[first.length + second.length];
    while(iFirst < first.length && iSecond …
Run Code Online (Sandbox Code Playgroud)

java algorithm mergesort quicksort

20
推荐指数
2
解决办法
7601
查看次数

如何聚焦JFrame?

我正在写一个小游戏,一个JFrame包含主游戏,另一个JFrame显示得分.问题是,当我完成构建它们时,得分JFrame总是最终集中!我试过调用scoreDisplay.toFront(),scoreDisplay.requestFocus(),甚至:

display.setState(JFrame.ICONIZED);
display.setState(JFrame.NORMAL);
Run Code Online (Sandbox Code Playgroud)

有没有办法让这项工作?在此先感谢,约翰穆拉诺

java user-interface swing jframe

11
推荐指数
3
解决办法
5万
查看次数

标签 统计

java ×2

algorithm ×1

jframe ×1

mergesort ×1

quicksort ×1

swing ×1

user-interface ×1