冒泡排序
冒泡排序是将相邻元素进行比较,如果前面的元素大于后面的元素,则交换这两个元素的位置,进行多轮比较排序后,数组的元素按照从小到大的顺序排列完成。
function ArrayList() {
var array = [];
this.insert = function(item) {
array.push(item);
};
this.toString = function() {
return array.join();
};
// 冒泡排序
this.bubbleSort = function() {
var length = array.length;
for (var i = 0; i < length; i++) {
for (var j = 0; j < length - 1; j++) {
if (array[j] > array[j+1]) {
swap(j, j+1);
}
}
}
}
var swap = function(index1, index2) {
var temp = array[index1];
array[index1] = array[index2];
array[index2] = temp;
};
// 改进后的冒泡排序
this.bubbleSort2 = function() {
var length = array.length;
for(var i =0; i < length; i++) {
for (var j = 0; j < length - 1 - i; j++) {
if (array[j] > array[j+1]) {
swap(j, j+1);
}
}
}
}
}