真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

javascript冒泡排序,JavaScript冒泡排序課程設計所遇到的問題

關于javascript冒泡排序的一個疑問

沒有什么區(qū)別。

創(chuàng)新互聯(lián)是一家專注于網(wǎng)站設計制作、成都網(wǎng)站制作與策劃設計,方正網(wǎng)站建設哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設10多年,網(wǎng)設計領域的專業(yè)建站公司;建站業(yè)務涵蓋:方正等地區(qū)。方正做網(wǎng)站價格咨詢:18980820575

作者多用了兩個可以不用的變量而已(可能為了更直觀,可能是作者忘記了可以寫更少的代碼)。

正如我們可能會寫:

var s = get**();

alert(s);

可以直接寫成這樣:

alert(get**());

你說是不是。

沒有中間變量的JavaScript冒泡排序法?

在進行位置交換的時候使用以下模式,就可以實現(xiàn)不需要中間變量:

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

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

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

舉個栗子:

比如a[i]是8,a[j]是9,根據(jù)上面步驟有:

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;

因此最終實現(xiàn)了無需中間變量即可交換兩者的值。

JavaScript如何以封裝的方式實現(xiàn)冒泡排序

!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冒泡排序

//?冒泡排序必須創(chuàng)建一個變量嗎??答案:?NO?NO?NO!?不信請看下方↓↓↓

//?知識重點:連續(xù)對?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冒泡排序課程設計所遇到的問題
文章網(wǎng)址:http://weahome.cn/article/dsdhcpc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部