JavaScript 排序算法(更新中)

排序算法的核心思想是:對一組數(shù)據(jù)按照一定的順序重新排列。重新排列時用到的技術(shù)是一組嵌套的 for 循環(huán)蹬敲。其中外循環(huán)會遍歷數(shù)組的每一項暇昂,內(nèi)循環(huán)則用于比較元素。

幾個概念

1伴嗡、時間復(fù)雜度:一個算法執(zhí)行所耗費的時間

2急波、空間復(fù)雜度:運行完一個程序所需內(nèi)存的大小

3、穩(wěn)定指:如果a=b,a在b的前面闹究,排序后a仍然在b的前面

4幔崖、不穩(wěn)定指:如果a=b食店,a在b的前面渣淤,排序后可能會交換位置

一赏寇、冒泡排序

這是最慢的排序算法之一,但也是一種最容易實現(xiàn)的价认。

數(shù)值會像氣泡一樣從數(shù)組的一端漂浮到另一端嗅定。之所以會產(chǎn)生這種現(xiàn)象是因為算法會多次在數(shù)組中移動,比較相鄰數(shù)據(jù)用踩,當(dāng)左側(cè)值大于右側(cè)值時將他們進(jìn)行互換渠退。

1、平均時間復(fù)雜度:O(n*n)【最好情況O(n)脐彩、最差情況O(n*n)】

2碎乃、空間復(fù)雜度O(1)

3、穩(wěn)定性:穩(wěn)定

一個實現(xiàn)過程例子:

E A D B H

A E D B H

A D E B H

A D B E H

A B D E H

實現(xiàn)方法一:

當(dāng)i=0的時候惠奸,里面的循環(huán)完整執(zhí)行梅誓,從j=0執(zhí)行到j(luò)=6,這也就是第一遍排序,結(jié)果是將最大的數(shù)排到了最后佛南,這一遍循環(huán)結(jié)束后的結(jié)果應(yīng)該是[8,15,88,55,76,21,39,94]

當(dāng)i=1的時候梗掰,里面的循環(huán)再次完整執(zhí)行,由于最大的數(shù)已經(jīng)在最后了嗅回,沒有必要去比較數(shù)組的最后兩項及穗,這也是j

即每次將剩下數(shù)組里面最大的一個數(shù)排到最后面,當(dāng)?shù)谝粋€循環(huán)執(zhí)行到最后的時候绵载,也就是i=6,此時埂陆,j=0,只需要比較數(shù)組的第一和第二項,比較完畢尘分,返回猜惋。

實現(xiàn)方法二:

外層的for循環(huán)采用遞減的方式,當(dāng)outer=2的時候只有兩個元素需要比較了培愁,則執(zhí)行最后一次比較著摔。

二、選擇排序

從數(shù)組的開頭開始定续,將第一個元素和其他元素進(jìn)行比較谍咆。檢查完所有元素后,最小的元素被放到數(shù)組的第一個位置私股。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末摹察,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子倡鲸,更是在濱河造成了極大的恐慌供嚎,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,607評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異克滴,居然都是意外死亡逼争,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,239評論 3 395
  • 文/潘曉璐 我一進(jìn)店門劝赔,熙熙樓的掌柜王于貴愁眉苦臉地迎上來誓焦,“玉大人,你說我怎么就攤上這事着帽≡游埃” “怎么了?”我有些...
    開封第一講書人閱讀 164,960評論 0 355
  • 文/不壞的土叔 我叫張陵仍翰,是天一觀的道長赫粥。 經(jīng)常有香客問我,道長予借,這世上最難降的妖魔是什么傅是? 我笑而不...
    開封第一講書人閱讀 58,750評論 1 294
  • 正文 為了忘掉前任,我火速辦了婚禮蕾羊,結(jié)果婚禮上喧笔,老公的妹妹穿的比我還像新娘。我一直安慰自己龟再,他們只是感情好书闸,可當(dāng)我...
    茶點故事閱讀 67,764評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著利凑,像睡著了一般浆劲。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上哀澈,一...
    開封第一講書人閱讀 51,604評論 1 305
  • 那天牌借,我揣著相機與錄音,去河邊找鬼割按。 笑死膨报,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的适荣。 我是一名探鬼主播现柠,決...
    沈念sama閱讀 40,347評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼弛矛!你這毒婦竟也來了够吩?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,253評論 0 276
  • 序言:老撾萬榮一對情侶失蹤丈氓,失蹤者是張志新(化名)和其女友劉穎周循,沒想到半個月后强法,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,702評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡湾笛,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,893評論 3 336
  • 正文 我和宋清朗相戀三年拟烫,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片迄本。...
    茶點故事閱讀 40,015評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖课竣,靈堂內(nèi)的尸體忽然破棺而出嘉赎,到底是詐尸還是另有隱情,我是刑警寧澤于樟,帶...
    沈念sama閱讀 35,734評論 5 346
  • 正文 年R本政府宣布公条,位于F島的核電站,受9級特大地震影響迂曲,放射性物質(zhì)發(fā)生泄漏靶橱。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,352評論 3 330
  • 文/蒙蒙 一路捧、第九天 我趴在偏房一處隱蔽的房頂上張望关霸。 院中可真熱鬧,春花似錦杰扫、人聲如沸队寇。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,934評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽佳遣。三九已至,卻和暖如春凡伊,著一層夾襖步出監(jiān)牢的瞬間零渐,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,052評論 1 270
  • 我被黑心中介騙來泰國打工系忙, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留诵盼,地道東北人。 一個月前我還...
    沈念sama閱讀 48,216評論 3 371
  • 正文 我出身青樓银还,卻偏偏與公主長得像拦耐,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子见剩,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,969評論 2 355

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

  • 1. 關(guān)于診斷X線機準(zhǔn)直器的作用杀糯,錯誤的是()。 (6.0 分) A. 顯示照射野 B. 顯示中心線 C. 屏蔽多...
    我們村我最帥閱讀 10,435評論 0 5
  • 訥言 【用心創(chuàng)造美好生活】——獻(xiàn)給我的孩子們 一入社會苍苞,就像離開溫室的花朵固翰,如果繼續(xù)渾渾噩噩的生活狼纬,那么就會被生活...
    散落的書和塵閱讀 301評論 0 0
  • 聽了幾遍奮不顧身像白素貞,然后找來趙雅芝和葉童的電視劇來看骂际,與其是看疗琉,不如是一種刺激。大一暑假時歉铝,有一陣時光盈简,做完...
    黃云豐閱讀 224評論 3 0
  • 一直以為不在一起 就不會想起,可是看到相似的身影太示,心中的波瀾還是難以撫平柠贤,在遇到你之前我以為不會有生命中的唯一...
    一口袋土撥鼠閱讀 111評論 0 0