亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C++ > 正文

C++冒泡排序數據結構、算法及改進算法

2020-02-24 14:32:44
字體:
來源:轉載
供稿:網友

C++冒泡排序數據結構、算法及改進算法,冒泡排序是一種簡單排序。這種排序是采用“冒泡策略”將最大元素移到最右邊。在冒泡過程中,相鄰兩個元素比較,如果左邊大于右邊的,則進行交換兩個元素。這樣一次冒泡后,可確保最大的在最右邊。然后執行n次冒泡后排序即可完畢。

程序代碼如下:

?

// BubbleSort.cpp : 定義控制臺應用程序的入口點。
//
#include "stdafx.h"
#include <cmath>
#include <iostream>
using namespace std;
#define? MAXNUM 20
template<typename T>
void Swap(T& a, T& b)
{
??? int t = a;
??? a = b;
??? b = t;
}
template<typename T>
void Bubble(T a[], int n)
{//把數組a[0:n-1]中最大的元素通過冒泡移到右邊
??? for(int i =0 ;i < n-1; i++)
??? {
??????? if(a[i] >a[i+1])
??????????? Swap(a[i],a[i+1]);
??? }
}
template<typename T>
void BubbleSort(T a[],int n)
{//對數組a[0:n-1]中的n個元素進行冒泡排序
??? for(int i = n;i > 1; i--)
??????? Bubble(a,i);
}
int _tmain(int argc, _TCHAR* argv[])
{
??? int a[MAXNUM];
??? for(int i = 0 ;i< MAXNUM; i++)
??? {
??????? a[i] = rand()%(MAXNUM*5);
??? }
??? for(int i =0; i< MAXNUM; i++)
??????? cout << a[i] << "? ";
??? cout << endl;
??? BubbleSort(a,MAXNUM);
??? cout << "After BubbleSort: " << endl;
??? for(int i =0; i< MAXNUM; i++)
??????? cout << a[i] << "? ";
??? cin.get();
??? return 0;
}

?

但是常規的冒泡,不管相鄰的兩個元素是否已經排好序,都要冒泡,這就沒有必要了,所有我們對這點進行改進。設計一種及時終止的冒泡排序算法:

如果在一次冒泡過程中沒有發生元素互換,則說明數組已經按序排列好了,沒有必要再繼續進行冒泡排序了。代碼如下:

?

?

// BubbleSort.cpp : 定義控制臺應用程序的入口點。

?

//
#include "stdafx.h"
#include <cmath>
#include <iostream>
using namespace std;
#define? MAXNUM 20
template<typename T>
void Swap(T& a, T& b)
{
??? int t = a;
??? a = b;
??? b = t;
}
template<typename T>
bool Bubble(T a[], int n)
{//把數組a[0:n-1]中最大的元素通過冒泡移到右邊
??? bool swapped = false;//尚未發生交換
??? for(int i =0 ;i < n-1; i++)
??? {
??????? if(a[i] >a[i+1])
??????? {
??????????? Swap(a[i],a[i+1]);
??????????? swapped = true;//發生了交換
??????? }
??? }
??? return swapped;
}
template<typename T>
void BubbleSort(T a[],int n)
{//對數組a[0:n-1]中的n個元素進行冒泡排序
??? for(int i = n;i > 1 && Bubble(a,i); i--);
}
int _tmain(int argc, _TCHAR* argv[])
{
??? int a[MAXNUM];
??? for(int i = 0 ;i< MAXNUM; i++)
??? {
??????? a[i] = rand()%(MAXNUM*5);
??? }
??? for(int i =0; i< MAXNUM; i++)
??????? cout << a[i] << "? ";
??? cout << endl;
??? BubbleSort(a,MAXNUM);
??? cout << "After BubbleSort: " << endl;
??? for(int i =0; i< MAXNUM; i++)
??????? cout << a[i] << "? ";
??? cin.get();
??? return 0;
}


改進后的算法,在最壞的情況下執行的比較次數與常規冒泡一樣,但是最好情況下次數減少為n-1。更多精彩內容,盡在武林技術頻道。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲视屏在线播放| 国语自产偷拍精品视频偷| 日韩美女视频免费在线观看| 亚洲黄色在线观看| 欧美日韩亚洲成人| 国产日韩欧美日韩| 欧美日韩一区二区三区| 国产精品a久久久久久| 国产精品视频永久免费播放| 高清亚洲成在人网站天堂| 国产成人高清激情视频在线观看| 中文在线资源观看视频网站免费不卡| 欧美激情第99页| 欧美日韩电影在线观看| 亚洲精品一区二区在线| 日韩中文字幕不卡视频| 国产精品主播视频| 在线播放日韩精品| 欧美资源在线观看| 成人性生交大片免费观看嘿嘿视频| 国产成人aa精品一区在线播放| 亚洲国产精品久久久久秋霞蜜臀| 亚洲欧美福利视频| 色偷偷亚洲男人天堂| 国产在线精品一区免费香蕉| 成人欧美一区二区三区在线湿哒哒| 久久久久久尹人网香蕉| 亚洲欧美精品在线| 久久久国产视频| 欧美网站在线观看| 日本欧美在线视频| 亚洲偷熟乱区亚洲香蕉av| 日韩一区二区福利| 国产成人精品综合久久久| 2019亚洲日韩新视频| 国产欧美日韩免费看aⅴ视频| 国产成人精品在线观看| 日本人成精品视频在线| 正在播放欧美视频| 国产精品美女久久久久久免费| 夜夜躁日日躁狠狠久久88av| 日韩日本欧美亚洲| 日韩精品中文字幕有码专区| 91精品国产综合久久男男| 日韩精品999| 国内精品视频一区| 欧美日韩中国免费专区在线看| 亚洲精品理论电影| 精品国产美女在线| 国产精品免费一区二区三区都可以| 午夜精品久久久久久99热软件| 亚洲视频一区二区三区| 97在线视频观看| 欧美丰满少妇xxxxx| 国产精品久久久精品| 国产精品美女久久久久av超清| 国产日韩精品电影| 亚洲国产欧美日韩精品| 欧美极品美女视频网站在线观看免费| 97色在线视频观看| 精品国产31久久久久久| 日韩精品中文字幕在线观看| 国产999精品久久久影片官网| 亚洲free性xxxx护士白浆| 成人av在线亚洲| 亚洲人成毛片在线播放| 欧美日韩国产黄| 日韩小视频在线观看| 国产精国产精品| 91人人爽人人爽人人精88v| 97久久精品人人澡人人爽缅北| 91手机视频在线观看| 国产精品成人一区二区三区吃奶| 亚洲片国产一区一级在线观看| 国产亚洲综合久久| 黑人巨大精品欧美一区二区| 九九热这里只有在线精品视| 日韩国产精品视频| 精品美女国产在线| 色中色综合影院手机版在线观看| 在线电影中文日韩| 97香蕉久久夜色精品国产| 亚洲欧美日韩在线高清直播| 超碰97人人做人人爱少妇| 国产精品吹潮在线观看| 亚洲性猛交xxxxwww| 欧美日韩在线视频首页| 国产精品综合不卡av| 欧美超级免费视 在线| 成人精品久久av网站| 亚洲女性裸体视频| 日韩欧美999| 中日韩午夜理伦电影免费| 色先锋久久影院av| 精品高清一区二区三区| 国产精品日韩在线一区| 亚洲国产欧美在线成人app| 成人性生交大片免费看小说| 国产精品免费视频久久久| 亚洲电影免费观看高清| 精品视频在线播放色网色视频| 中文字幕亚洲情99在线| 国产精品日日做人人爱| 日韩午夜在线视频| 日韩av最新在线| 国自在线精品视频| 日韩电影免费观看中文字幕| www.日本久久久久com.| 久久久久久久久久久人体| 国产成人一区二| 国产成人一区二区| 26uuu亚洲国产精品| 欧美性受xxxx黑人猛交| 欧美成人三级视频网站| 91九色蝌蚪国产| 欧美视频在线免费看| 色偷偷偷综合中文字幕;dd| 亚洲自拍另类欧美丝袜| 欧美精品videofree1080p| 久久影院中文字幕| 久久久久久噜噜噜久久久精品| 亚洲少妇激情视频| 国产91色在线| 北条麻妃99精品青青久久| 日韩精品视频观看| 欧美高清视频免费观看| 在线视频一区二区| 国产专区欧美专区| 国自在线精品视频| 欧美丰满老妇厨房牲生活| 6080yy精品一区二区三区| 欧美怡春院一区二区三区| 国产一区二区三区在线免费观看| 国产精品亚洲视频在线观看| 成人激情视频免费在线| 精品久久久91| 色在人av网站天堂精品| 国产精品欧美日韩| 亚洲免费伊人电影在线观看av| 亚洲国产另类久久精品| 国产亚洲精品久久久| 97人人做人人爱| 亲爱的老师9免费观看全集电视剧| 爽爽爽爽爽爽爽成人免费观看| 日韩av日韩在线观看| 精品女厕一区二区三区| 国产成人亚洲综合91精品| 久久99精品久久久久久青青91| 欧美激情伊人电影| 国产欧美日韩丝袜精品一区| 欧美日韩成人在线播放| 欧美一级高清免费播放| 欧美超级免费视 在线| 性欧美亚洲xxxx乳在线观看| 亚洲国产一区自拍| 茄子视频成人在线| 亚洲天堂av在线免费| 亚洲3p在线观看| 亚洲一区二区三区四区在线播放| 亚洲自拍小视频免费观看| 欧美日韩性视频在线| 欧美性猛交xxxx| 91精品国产综合久久香蕉最新版| 日韩免费在线免费观看|