网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

javascript冒泡排序,JavaScript冒泡排序课程设计所遇到的问题

关于javascript冒泡排序的一个疑问

没有什么区别。

创新互联是一家专注于网站设计制作、成都网站制作与策划设计,方正网站建设哪家好?创新互联做网站,专注于网站建设10多年,网设计领域的专业建站公司;建站业务涵盖:方正等地区。方正做网站价格咨询:18980820575

作者多用了两个可以不用的变量而已(可能为了更直观,可能是作者忘记了可以写更少的代码)。

正如我们可能会写:

var s = get**();

alert(s);

可以直接写成这样:

alert(get**());

你说是不是。

没有中间变量的JavaScript冒泡排序法?

在进行位置交换的时候使用以下模式,就可以实现不需要中间变量:

a[i] = a[i] + a[j];

a[j] = a[i] - a[j];

a[i] = a[i] - a[j];

举个栗子:

比如a[i]是8,a[j]是9,根据上面步骤有:

a[i] = a[i] + a[j]=8+9=17;

a[j] = a[i] - a[j]=17-9=8;

a[i] = a[i] - a[j]=17-8=9;

因此最终实现了无需中间变量即可交换两者的值。

JavaScript如何以封装的方式实现冒泡排序

!DOCTYPE html

html

body

/body

script type="text/javascript"

function bubbleSort (arr) {

for (var i = 0; i  arr.length-1; i++) {

for (var j = 0; j  arr.length-1-i; j++) {

if (arr[j]  arr[j+1]) {

var temp = arr[j];

arr[j] = arr[j+1];

arr[j+1] = temp;

}

};

};

return arr;

}

var testArr = new Array(3,5,4,1,6);

var sortArr = bubbleSort(testArr);

alert(sortArr);

/script

/html

可直接保存为html文件打开测试。

没有中间变量的javascript冒泡排序

// 冒泡排序必须创建一个变量吗? 答案: NO NO NO! 不信请看下方↓↓↓

// 知识重点:连续对 2 个变量使用 3 次异或运算,可以交换两者的值!

let a = 10,

b = 99;

a ^= b;

b ^= a;

a ^= b;

console.log(a) // 99

console.log(b) // 10

------------------------------------------------------------------------------

示例: 冒泡排序

let numList = [2,6,4,1,9,8,10,7,5,3],

numListLen = numList.length;

for(let i = 0; i  numListLen; i++){

for(let j = 0; j  numListLen; j++){

if(numList[j]  numList[j+1]){

numList[j] ^= numList[j+1];

numList[j+1] ^= numList[j];

numList[j] ^= numList[j+1];

}

}

}

console.log(numList); //  [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]


网站题目:javascript冒泡排序,JavaScript冒泡排序课程设计所遇到的问题
地址分享:http://bjjierui.cn/article/dsdhcpc.html

其他资讯