【发布时间】:2014-07-23 19:47:06
【问题描述】:
我必须解决以下问题。所以最初我有一个冒泡排序,现在我对其进行了修改以使其成为双向。以下是我的解决方案。
public void bubbleSort() {
int temp;
int out;
int outNew = 0;
int in;
for (out = nElems - 1; out > outNew; out--) {
for (in = 0; in < out; in++) {
if (a[in] > a[in + 1]) {
temp = a[in + 1];
a[in + 1] = a[in];
a[in] = temp;
}
}
for (int j = in - 1; j > outNew; j--) {
if (a[j] < a[j - 1]) {
temp = a[j];
a[j] = a[j - 1];
a[j - 1] = temp;
}
}
outNew++;
}
}
当我调用冒泡排序对我创建的数组中的几个随机数进行排序时,它似乎排序正常。我的问题是针对所有开发人员,我的解决方案是否满足上面发布的问题,以及我可以做些什么不同的事情来使这个解决方案更有效(如果可能的话)。如果这是一个开放的问题,我很抱歉,我通常在这里寻找提示和建议而不是代码,因为它可以帮助我更好地学习。我感谢所有答案,并对任何建议持开放态度。
【问题讨论】:
标签: java algorithm sorting bubble-sort