注意选择排序和冒泡排序的异同点:
它们两者比较的次数一样,O【N^2】的时间。
但选择排序的交换次数要比冒泡少。我想是因为它在每次循环之前,就设计了一个锚点。(如下面的MIN),这样就避免了已排序好的元素再交换。其适用于排序量少而交换多。
public void insert(long value) { int j; int i; long temp; long min; a[nElems] = value; nElems++; for(j = 0; j < nElems; j++){ min = a[j]; for(i = j; i < nElems; i++){ if (a[j] > a[i]){ min = a[i]; temp = a[i]; a[i] = a[j]; a[j] = temp; } } } System.out.print("Insert value: " + value); System.out.println(""); }
输出没有差别
时间: 2024-11-01 12:19:38