function arrayList() {
var array=[];
this.insert=function(item){
array.push(item);
}
this.toString=function(){
return array.join();
}
// 冒泡排序
this.bubbleSort=function(){
let length = array.length;
// 外层循环控制轮数
for(let i=0; i<length;i++){
console.log("外层:"+i);
// 内层负责对比换位
for (let j = 0; j <length-1-i; j++) {
console.log("内层:" + j);
if (array[j]>array[j+1]) {
swap(array,j,j+1)
}
}
}
}
// 选择排序
this.selectionSort = function () {
var length = array.length,
indexMin;
for (var i=0; i<length-1; i++){
indexMin = i;
for (var j=i; j<length; j++){ //{4}
if(array[indexMin]>array[j]){ //{5}
indexMin = j; //{6}
}
}
if (i !== indexMin){ //{7}
swap(array,i,indexMin);
}
}
};
function swap(array,index1,index2){
[array[index1], array[index2]] = [array[index2], array[index1]];
}
}
function creatRandomArray(size){
let array = new arrayList();
for (let index = size; index > 0; index--) {
array.insert(index);
}
return array;
}
var array = creatRandomArray(5);
console.log(array.toString())
// array.bubbleSort();
console.log(array.toString())
array.selectionSort();
console.log(array.toString())
js 排序算法之 冒泡排序 和 选择排序
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...