2022考研計(jì)算機(jī)考點(diǎn):各類(lèi)排序算法的特點(diǎn)及比較

最后更新時(shí)間:2021-06-24 14:32:00
輔導(dǎo)課程:暑期集訓(xùn) 在線咨詢
復(fù)習(xí)緊張,焦頭爛額?逆風(fēng)輕襲,來(lái)跨考秋季集訓(xùn)營(yíng),幫你尋方法,定方案! 了解一下>>

  計(jì)算機(jī)的競(jìng)爭(zhēng)度逐年加大,報(bào)考學(xué)生越來(lái)越多,對(duì)于打算報(bào)考2022考研計(jì)算機(jī)的考生們來(lái)說(shuō)復(fù)習(xí)是難點(diǎn),大家復(fù)習(xí)也需要講究方法,掌握一定的技巧。下面小編整理了2022考研計(jì)算機(jī)考點(diǎn):各類(lèi)排序算法的特點(diǎn)及比較,供大家參考。

  幾種主要的排序算法:冒泡排序、選擇排序、插入排序、快速排序、歸并排序、Shell排序、堆排序等。

  冒泡排序算法思想:將待排序的元素看作是豎著排列的“氣泡”,較小的元素比較輕,從而要往上浮。在冒泡排序算法中我們要對(duì)這個(gè)“氣泡”序列處理若干遍。所謂一遍處理,就是自底向上檢查一遍這個(gè)序列,并時(shí)刻注意兩個(gè)相鄰的元素的順序是否正確。如果發(fā)現(xiàn)兩個(gè)相鄰元素的順序不對(duì),即“輕”的元素在下面,就交換它們的位置。

  選擇排序算法思想:選擇排序的基本思想是對(duì)待排序的記錄序列進(jìn)行n-1遍的處理,第i遍處理是將L[i..n]中最小者與L[i]交換位置。這樣,經(jīng)過(guò)i遍處理之后,前i個(gè)記錄的位置已經(jīng)是正確的了。

  插入排序算法思想:經(jīng)過(guò)i-1遍處理后,L[1..i-1]己排好序。第i遍處理僅將L[i]插入L[1..i-1]的適當(dāng)位置,使得L[1..i]又是排好序的序列。

  快速排序算法思想:快速排序的基本思想是基于分治策略的。對(duì)于輸入的子序列L[p..r],如果規(guī)模足夠小則直接進(jìn)行排序,否則分三步處理:1. 分解(Divide):將輸入的序列L[p..r]劃分成兩個(gè)非空子序列L[p..q]和L[q+1..r],使L[p..q]中任一元素的值不大于L[q+1..r]中任一元素的值。2. 遞歸求解(Conquer):通過(guò)遞歸調(diào)用快速排序算法分別對(duì)L[p..q]和L[q+1..r]進(jìn)行排序。3. 合并(Merge):由于對(duì)分解出的兩個(gè)子序列的排序是就地進(jìn)行的,所以在L[p..q]和L[q+1..r]都排好序后不需要執(zhí)行任何計(jì)算L[p..r]就已排好序。

  歸并排序算法思想:分而治之(divide - conquer)。每個(gè)遞歸過(guò)程涉及三個(gè)步驟:1.分解,把待排序的n個(gè)元素的序列分解成兩個(gè)子序列,每個(gè)子序列包括 n/2 個(gè)元素。2. 治理,對(duì)每個(gè)子序列分別調(diào)用歸并排序MergeSort,進(jìn)行遞歸操作。3. 合并,合并兩個(gè)排好序的子序列,生成排序結(jié)果。

  Shell排序算法思想:算法先將要排序的一組數(shù)按某個(gè)增量d分成若干組,每組中記錄的下標(biāo)相差d.對(duì)每組中全部元素進(jìn)行排序,然后再用一個(gè)較小的增量對(duì)它進(jìn)行,在每組中再進(jìn)行排序。當(dāng)增量減到1時(shí),整個(gè)要排序的數(shù)被分成一組,排序完成。

  堆排序算法思想:用大根堆排序的基本思想:1.先將初始文件R[1..n]建成一個(gè)大根堆,此堆為初始的無(wú)序區(qū)。2.再將關(guān)鍵字最大的記錄R[1](即堆頂)和無(wú)序區(qū)的最后一個(gè)記錄R[n]交換,由此得到新的無(wú)序區(qū)R[1..n-1]和有序區(qū)R[n],且滿足R[1..n-1].keys≤R[n].key。3. 由于交換后新的根R[1]可能違反堆性質(zhì),故應(yīng)將當(dāng)前無(wú)序區(qū)R[1..n-1]調(diào)整為堆。

  (注:本文來(lái)自網(wǎng)絡(luò) ,如有侵權(quán),請(qǐng)聯(lián)系刪除)

  2022考研初復(fù)試已經(jīng)接近尾聲,考研學(xué)子全面進(jìn)入2023屆備考,跨考為23考研的考生準(zhǔn)備了10大課包全程準(zhǔn)備、全年復(fù)習(xí)備考計(jì)劃、目標(biāo)院校專(zhuān)業(yè)輔導(dǎo)、全真復(fù)試模擬練習(xí)和全程針對(duì)性指導(dǎo);2023考研的小伙伴針也已經(jīng)開(kāi)始擇校和復(fù)習(xí)了,跨考考研暢學(xué)5.0版本全新升級(jí),無(wú)論你在校在家都可以更自如的完成你的考研復(fù)習(xí),暑假集訓(xùn)營(yíng)帶來(lái)了院校專(zhuān)業(yè)初步選擇,明確方向;考研備考全年規(guī)劃,核心知識(shí)點(diǎn)入門(mén);個(gè)性化制定備考方案,助你贏在起跑線,早出發(fā)一點(diǎn)離成功就更近一點(diǎn)!

點(diǎn)擊右側(cè)咨詢或直接前往了解更多

考研院校專(zhuān)業(yè)選擇和考研復(fù)習(xí)計(jì)劃
2023備考學(xué)習(xí) 2023線上線下隨時(shí)學(xué)習(xí) 34所自劃線院??佳袕?fù)試分?jǐn)?shù)線匯總
2022考研復(fù)試最全信息整理 全國(guó)各招生院??佳袕?fù)試分?jǐn)?shù)線匯總
2023全日制封閉訓(xùn)練 全國(guó)各招生院??佳姓{(diào)劑信息匯總
2023考研先知 考研考試科目有哪些? 如何正確看待考研分?jǐn)?shù)線?
不同院校相同專(zhuān)業(yè)如何選擇更適合自己的 從就業(yè)說(shuō)考研如何擇專(zhuān)業(yè)?
手把手教你如何選專(zhuān)業(yè)? 高校研究生教育各學(xué)科門(mén)類(lèi)排行榜

跨考考研課程

班型 定向班型 開(kāi)班時(shí)間 高定班 標(biāo)準(zhǔn)班 課程介紹 咨詢
秋季集訓(xùn) 沖刺班 9.10-12.20 168000 24800起 小班面授+專(zhuān)業(yè)課1對(duì)1+專(zhuān)業(yè)課定向輔導(dǎo)+協(xié)議加強(qiáng)課程(高定班)+專(zhuān)屬規(guī)劃答疑(高定班)+精細(xì)化答疑+復(fù)試資源(高定班)+復(fù)試課包(高定班)+復(fù)試指導(dǎo)(高定班)+復(fù)試班主任1v1服務(wù)(高定班)+復(fù)試面授密訓(xùn)(高定班)+復(fù)試1v1(高定班)
2023集訓(xùn)暢學(xué) 非定向(政英班/數(shù)政英班) 每月20日 22800起(協(xié)議班) 13800起 先行階在線課程+基礎(chǔ)階在線課程+強(qiáng)化階在線課程+真題階在線課程+沖刺階在線課程+專(zhuān)業(yè)課針對(duì)性一對(duì)一課程+班主任全程督學(xué)服務(wù)+全程規(guī)劃體系+全程測(cè)試體系+全程精細(xì)化答疑+擇校擇專(zhuān)業(yè)能力定位體系+全年關(guān)鍵環(huán)節(jié)指導(dǎo)體系+初試加強(qiáng)課+初試專(zhuān)屬服務(wù)+復(fù)試全科標(biāo)準(zhǔn)班服務(wù)

①凡本網(wǎng)注明“稿件來(lái)源:跨考網(wǎng)”的所有文字、圖片和音視頻稿件,版權(quán)均屬北京尚學(xué)碩博教育咨詢有限公司(含本網(wǎng)和跨考網(wǎng))所有,任何媒體、網(wǎng)站或個(gè)人未經(jīng)本網(wǎng)協(xié)議授權(quán)不得轉(zhuǎn)載、鏈接、轉(zhuǎn)帖或以其他任何方式復(fù)制、發(fā)表。已經(jīng)本網(wǎng)協(xié)議授權(quán)的媒體、網(wǎng)站,在下載使用時(shí)必須注明“稿件來(lái)源,跨考網(wǎng)”,違者本網(wǎng)將依法追究法律責(zé)任。

②本網(wǎng)未注明“稿件來(lái)源:跨考網(wǎng)”的文/圖等稿件均為轉(zhuǎn)載稿,本網(wǎng)轉(zhuǎn)載僅基于傳遞更多信息之目的,并不意味著再通轉(zhuǎn)載稿的觀點(diǎn)或證實(shí)其內(nèi)容的真實(shí)性。如其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)下載使用,必須保留本網(wǎng)注明的“稿件來(lái)源”,并自負(fù)版權(quán)等法律責(zé)任。如擅自篡改為“稿件來(lái)源:跨考網(wǎng)”,本網(wǎng)將依法追究法律責(zé)任。

③如本網(wǎng)轉(zhuǎn)載稿涉及版權(quán)等問(wèn)題,請(qǐng)作者見(jiàn)稿后在兩周內(nèi)速來(lái)電與跨考網(wǎng)聯(lián)系,電話:400-883-2220