gen*_*ion 4 javascript bubble-sort
拥有与此类似的Bubblesort例程。我需要通过在对数组排序或对数组进行排序时停止循环来提高效率。
function sortNumbers(listbox) {
var x, y, holder;
// The Bubble Sort method.
for(x = 0; x < ranarray.length; x++) {
for(y = 0; y < (ranarray.length-1); y++) {
if(ranarray[y] > ranarray[y+1]) {
holder = ranarray[y+1];
ranarray[y+1] = ranarray[y];
ranarray[y] = holder;
}
}
}
Run Code Online (Sandbox Code Playgroud)
在进入内部循环之前,创建一个布尔值以检查内部循环内部是否发生了交换。没有交换时,将对数组进行排序。
function sortNumbers(listbox) {
var x, y, holder;
// The Bubble Sort method.
for(x = 0; x < ranarray.length; x++) {
var swapOccured = false;
for(y = 0; y < (ranarray.length-1); y++) {
if(ranarray[y] > ranarray[y+1]) {
holder = ranarray[y+1];
ranarray[y+1] = ranarray[y];
ranarray[y] = holder;
swapOccured = true;
}
}
if (!swapOccured) break;
}
Run Code Online (Sandbox Code Playgroud)