概念
冒泡排序的英文Bubble Sort,是一種最基礎(chǔ)的交換排序。之所以叫做冒泡排序,因?yàn)槊恳粋€(gè)元素都可以像小氣泡一樣,根據(jù)自身大小一點(diǎn)一點(diǎn)向數(shù)組的一側(cè)移動(dòng)。
冒泡排序的基本思想是:從前往后(或從后往前)兩兩比較相鄰元素的值,若為逆序(即A[I-1]>A[I]),則交換它們,直到序列比較完。我們稱它為第一趟冒泡,結(jié)果是將最小的元素交換到待排序列的第一個(gè)位置(或?qū)⒆畲蟮脑亟粨Q到待排序列的最后一個(gè)位置),關(guān)鍵字最小的元素如氣泡一樣逐漸向上“漂浮”。最終一個(gè)一個(gè)排好了位置。
冒泡排序可以說是所有排序算法中最容易理解的,我們每次都選出一個(gè)最大(最小)的元素,選擇n-1次就將個(gè)元素排成了一個(gè)遞減(遞增)的序列。
算法實(shí)現(xiàn)
#include
#include
#include
void Quick_sort(int a[],int size)
int main()
{
int k;
int num[9]={9,8,7,4,6,5,1,2,3};
int sortsize=sizeof(num)/sizeof(num[0]);
Bubble_sort(num,sortsize);
for(k=0;kprintf("\\n%d",num[k]);
system("pause");
return 0;
}
void Bubble_sort(int a[],int size)
{
int i,j;
int temporary;
for(i=0;ifor(j=size-1;j>=i;j--)
{
if(a[j-1]>a[j])
{
temporary=a[j];
a[j]=a[j-1];
a[j-1]=temporary;
}
}
}
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。
舉報(bào)投訴
相關(guān)推薦
排序算法是圖像處理中經(jīng)常使用一種算法,常見的排序算法有插入排序、希爾排序、選擇排序、冒泡
發(fā)表于 07-17 10:12
?1051次閱讀
labview 版的冒泡法排序,只是想用Labview表達(dá)冒泡法的思想,
發(fā)表于 06-05 11:18
package algorithms// 冒泡排序// 冒泡排序算法的運(yùn)作如下:// 比較相鄰的元素。如果第一個(gè)比第二個(gè)大,就交換他們兩個(gè)。// 對(duì)每一對(duì)相鄰元素作同樣的工作,從開始第
發(fā)表于 10-17 19:03
Java冒泡排序的原理
發(fā)表于 11-06 07:12
什么是冒泡排序?冒泡排序法的具體實(shí)現(xiàn)方法是什么?
發(fā)表于 07-15 06:48
一.冒泡排序基本思想:兩個(gè)數(shù)比較大小,較大的下沉,小的上浮。1.第一趟,相鄰的兩個(gè)數(shù)比較,后一個(gè)數(shù)小,就交換兩數(shù)的位置;2.依次往后走,最后找到最大的數(shù);3.針對(duì)所有的數(shù)重復(fù)以上的步驟,除了最后一個(gè)
發(fā)表于 01-16 18:38
?293次閱讀
冒泡排序是一種交換排序。
什么是交換排序呢?
交換排序:兩兩比較待排序的關(guān)鍵字,并交
發(fā)表于 01-17 12:47
?3005次閱讀
01 — 冒泡排序 在實(shí)現(xiàn)冒泡排序代碼之前我們先理解一下什么是冒泡排序,我們舉一個(gè)現(xiàn)實(shí)生活中的例
發(fā)表于 06-18 09:57
?1518次閱讀
C語言冒泡排序工程代碼匯總
發(fā)表于 08-30 11:06
?3次下載
為了讓大家掌握多種排序方法的基本思想,本篇文章帶著大家對(duì)數(shù)據(jù)結(jié)構(gòu)的常用七大算法進(jìn)行分析:包括直接插入排序、希爾排序、冒泡
發(fā)表于 03-16 08:22
?1633次閱讀
希爾排序是插入排序的一種,又稱“縮小增量排序”,希爾排序是直接插入排序算法的一種更高效的改進(jìn)版本,排序
發(fā)表于 08-08 10:02
?1340次閱讀
無論學(xué)習(xí)哪一種編程語言,進(jìn)行算法方面的訓(xùn)練時(shí)都繞不開“排序”。排序在進(jìn)階編程中有非常廣泛的應(yīng)用,要想成為編程高手,排序算法是必須要掌握的。而冒泡排序
發(fā)表于 01-20 10:39
?879次閱讀
在數(shù)據(jù)結(jié)構(gòu)中我們學(xué)習(xí)了解了冒泡排序和Arrays排序的基本算法,但沒能夠用編程語言實(shí)現(xiàn)出來。那我們應(yīng)該怎樣運(yùn)用Java通過編程語言將冒泡排序
發(fā)表于 03-02 09:37
?480次閱讀
jwt簡(jiǎn)介 冒泡排序: (Bubble Sort)是一種簡(jiǎn)單的交換排序。之所以叫做冒泡排序,因?yàn)槲覀兛梢园衙總€(gè)元素當(dāng)成一個(gè)小氣泡,根據(jù)氣泡大
發(fā)表于 09-25 16:33
?503次閱讀
信號(hào)分析是一種研究信號(hào)特性、提取有用信息的方法。它在通信、電子、控制、生物醫(yī)學(xué)等領(lǐng)域具有廣泛的應(yīng)用。本文將詳細(xì)介紹信號(hào)分析的基本思想、方法和應(yīng)用。 一、信號(hào)分析的基本思想 信號(hào)分析的基本思想是通過
發(fā)表于 06-03 10:28
?570次閱讀
評(píng)論