全球专业中文经管百科,由121,994位网友共同编写而成,共计436,137个条目

冒泡排序

用手机看条目

出自 MBA智库百科(https://wiki.mbalib.com/)

冒泡排序(Bubble Sort)

目錄

什麼是冒泡排序

  冒泡排序是一種電腦科學領域的常用的較簡單的排序演算法。如何設計出複雜度儘可能低且函數復用性高的演算法是演算法效率和通用性的關鍵內容。

  它重覆地走訪過要排序的元素列,依次比較兩個相鄰的元素,如果順序(如從大到小、首字母從Z到A)錯誤就把他們交換過來。走訪元素的工作是重覆地進行,直到沒有相鄰元素需要交換,也就是說該元素列已經排序完成。

冒泡排序的基本原理

  冒泡排序的基本原理是兩兩比較待排序數據的大小 ,當兩個數據的次序不滿足順序條件時即進行交換,反之,則保持不變,這樣每次最小(或最大)的結點就像氣泡一樣浮到序列的最前位置。設有 n 個數的序列,即數組 a(1)~a(n),要求按遞增(或遞減 )的順序排列,則冒泡排序法的基本演算法描述如下:

  (1)把 a(n)和 a(n一1)比較 ,如果 a(n)<a(n一1) (或 a(n)>a(n一1)),則把 a(n)和 a(n—1)的值交換。

  (2)再將 a(n一1)與 a(n一2)比較,如果 a(n一1)<a(n一2) (或 a(n一1)>a(n一2)),則把 a(n一1)和 a(n一2)的值交換。

  (3)按第(2)步的方法處理 a(n一2)、a(n一3)、a(n一4)、??、a(2)。

  (4)第(1)、(2)、(3)步組成一輪交換,交換完成後最小值(或最大值)被交換到 a(1)里。

  (5)重覆第 (1)、(2)、(3)步進行第 2 輪 、第 3 輪、?? 、第n一1 輪交換。設輪數為 i,i= l、2 、3、⋯⋯、n一1,每交換一輪 ,次小值(或次大值)被交換到 a(i)里,所以每輪處理到 a(i+1)結束。n一1輪交換都完成後,數據按遞增(或遞減 )的順序排列。

本條目對我有幫助0
MBA智库APP

扫一扫,下载MBA智库APP

  如果您認為本條目還有待完善,需要補充新內容或修改錯誤內容,請編輯條目投訴舉報

本条目由以下用户参与贡献

Mis铭,赵先生.

評論(共0條)

提示:評論內容為網友針對條目"冒泡排序"展開的討論,與本站觀點立場無關。

發表評論請文明上網,理性發言並遵守有關規定。

打开APP

以上内容根据网友推荐自动排序生成

官方社群
下载APP

闽公网安备 35020302032707号