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 排序算法之 冒泡排序 和 选择排序
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。