排序算法1——冒泡排序

1.冒泡排序
思想:
第一趟:相鄰兩個(gè)位置上的數(shù)進(jìn)行比較,大的排后面(或者前面)获询,進(jìn)行交換順序涨岁,繼續(xù)和下一個(gè)數(shù)進(jìn)行比較拐袜,這樣找到最大(最小)的數(shù)字梢薪。
第二趟:相同的規(guī)則阻肿,找到第二大(小)的數(shù)沮尿,
...
<code>
//冒泡排序算法
var array = [23,546,57,34,7869,1324];

*原始排序(不將比較后的數(shù)挑選出來(lái),只是排到后面) ------
// 控制趟數(shù)
var s = 0; //記錄循環(huán)此次
for(var i = 0; i <array.length - 1; i++){
// 控制兩兩比較的次數(shù)
for(var j = 0; j < array.length - 1; j++){
if(array[j] > array[j+1]){
var temp = array[j];
array[j] = array[j+1];
array[j+1] = temp;
}
s++;
}
}
console.log('s',s); // 比較次數(shù)最多25次 (數(shù)字長(zhǎng)度減1的平方)
console.log('array',array);
</code>
*內(nèi)循環(huán)可以減少比較次數(shù):(將比較后的數(shù)挑選出來(lái)较解,在剩下的數(shù)里面按照上面的規(guī)則找到剩下最大的數(shù))
<code>
//冒泡排序算法
var array = [23,546,57,34,7869,1324];
// 控制趟數(shù)
var s = 0; //記錄循環(huán)此次
for(var i = 0; i <array.length - 1; i++){
// 控制兩兩比較的次數(shù)
for(var j = 0; j < array.length - 1 - i ; j++){
if(array[j] > array[j+1]){
var temp = array[j];
array[j] = array[j+1];
array[j+1] = temp;
}
s++;
}
}
console.log('s',s); // 比較次數(shù) 15次
console.log('array',array);
</code>

*檢測(cè)某一趟是否需要交換位置畜疾。
(如果檢測(cè)到跑一趟后,兩兩數(shù)沒(méi)有再交換順序了印衔,則說(shuō)明已經(jīng)排序好了啡捶,不需要再循環(huán)了)
<code>
//冒泡排序算法
var array = [23,546,57,34,7869,1324];
// 控制趟數(shù)
var s = 0; //記錄循環(huán)此次
for(var i = 0; i <array.length - 1; i++){
// 控制兩兩比較的次數(shù)
var isSort = true; //每一趟開(kāi)始前,先假設(shè)就已經(jīng)排好了
for(var j = 0; j < array.length - 1 - i ; j++){
if(array[j] > array[j+1]){
isSort = false; //說(shuō)明這一趟中還存在交換位置奸焙,還沒(méi)有拍好瞎暑,給isSort = false;
var temp = array[j];
array[j] = array[j+1];
array[j+1] = temp;
}
s++;
}
if(isSort ){
break;//如果有一趟存在沒(méi)有再交換位置了,說(shuō)明已經(jīng)排好了与帆,沒(méi)有再進(jìn)行下一輪比較的必要了了赌,跳出外層循環(huán)
}
}
console.log('s',s); // 12 . 比較次數(shù)最少,不定次數(shù)玄糟,至少要交5次勿她。根據(jù)原始數(shù)組的順序。阵翎。
console.log('array',array);
</code>

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末逢并,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子郭卫,更是在濱河造成了極大的恐慌砍聊,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,252評(píng)論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件贰军,死亡現(xiàn)場(chǎng)離奇詭異玻蝌,居然都是意外死亡璃饱,警方通過(guò)查閱死者的電腦和手機(jī)嗓违,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,886評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門(mén)屠阻,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)没讲,“玉大人靖诗,你說(shuō)我怎么就攤上這事芍瑞】慰ⅲ” “怎么了朦促?”我有些...
    開(kāi)封第一講書(shū)人閱讀 168,814評(píng)論 0 361
  • 文/不壞的土叔 我叫張陵童太,是天一觀(guān)的道長(zhǎng)米辐。 經(jīng)常有香客問(wèn)我胸完,道長(zhǎng),這世上最難降的妖魔是什么翘贮? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,869評(píng)論 1 299
  • 正文 為了忘掉前任赊窥,我火速辦了婚禮,結(jié)果婚禮上狸页,老公的妹妹穿的比我還像新娘锨能。我一直安慰自己,他們只是感情好芍耘,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,888評(píng)論 6 398
  • 文/花漫 我一把揭開(kāi)白布址遇。 她就那樣靜靜地躺著,像睡著了一般斋竞。 火紅的嫁衣襯著肌膚如雪倔约。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 52,475評(píng)論 1 312
  • 那天坝初,我揣著相機(jī)與錄音浸剩,去河邊找鬼。 笑死鳄袍,一個(gè)胖子當(dāng)著我的面吹牛绢要,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播畦木,決...
    沈念sama閱讀 41,010評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼袖扛,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了十籍?” 一聲冷哼從身側(cè)響起蛆封,我...
    開(kāi)封第一講書(shū)人閱讀 39,924評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎勾栗,沒(méi)想到半個(gè)月后惨篱,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,469評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡围俘,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,552評(píng)論 3 342
  • 正文 我和宋清朗相戀三年砸讳,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片界牡。...
    茶點(diǎn)故事閱讀 40,680評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡簿寂,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出宿亡,到底是詐尸還是另有隱情常遂,我是刑警寧澤,帶...
    沈念sama閱讀 36,362評(píng)論 5 351
  • 正文 年R本政府宣布挽荠,位于F島的核電站克胳,受9級(jí)特大地震影響平绩,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜漠另,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,037評(píng)論 3 335
  • 文/蒙蒙 一捏雌、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧笆搓,春花似錦性湿、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,519評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至葫录,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間领猾,已是汗流浹背米同。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,621評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留摔竿,地道東北人面粮。 一個(gè)月前我還...
    沈念sama閱讀 49,099評(píng)論 3 378
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像继低,于是被迫代替她去往敵國(guó)和親熬苍。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,691評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容

  • 前言:相信很多小伙伴在學(xué)習(xí)排序算法的時(shí)候袁翁,都遇到過(guò)一個(gè)問(wèn)題柴底,就是好像理解了某算法的思想,但是手寫(xiě)的時(shí)候粱胜,總是不能寫(xiě)...
    Jack_deng閱讀 433評(píng)論 0 0
  • 排序算法說(shuō)明 (1)排序的定義:對(duì)一序列對(duì)象根據(jù)某個(gè)關(guān)鍵字進(jìn)行排序柄驻; 輸入:n個(gè)數(shù):a1,a2,a3,…,an 輸...
    code武閱讀 665評(píng)論 0 0
  • 數(shù)據(jù)結(jié)構(gòu)與算法Sorting Algorithms:Bubble Sort 1 基本思路 該算法對(duì)一個(gè)數(shù)組中的相鄰...
    凱玲之戀閱讀 402評(píng)論 0 0
  • #明家香##私設(shè)如珠峰# 假裝自己會(huì)寫(xiě),大概永遠(yuǎn)的ooc焙压。 想留下一個(gè)人有多少種方法鸿脓? 有時(shí)候我真的很難從眾人的提...
    游客1137閱讀 704評(píng)論 0 0
  • -1- 最近《戰(zhàn)狼2》正在熱映中幻件,上映短短3天時(shí)間就已經(jīng)打破了星爺導(dǎo)演的《美人魚(yú)》單日票房歷史拨黔,創(chuàng)造了整個(gè)華語(yǔ)影史...
    dfbc10ae5419閱讀 1,747評(píng)論 9 11