整个过程就像是烧开水一样,较小值像水中的气泡一样逐趟往上冒,每趟都会有一个最大的“水泡”浮出水面爆破消失。
原理:按数组排列顺序,相互比较大小,大则往前移动,每趟都选出最大值放置于最高位,并且下一趟的高位下移。
int main()
{
int test[8]={2, 4, 1, 5, 3, 7, 0, 100};
for (int i=7; i>0; --i) //设定最高位
{
for (int x=0; x<i; ++x) //选出最大值放入最高位
{
if (test[x]>test[x+1])
{
int t=test[x];
test[x]=test[x+1];
test[x+1]=t;
}
}
}
for (int j=0; j<8; ++j)
{
cout<<test[j]<<endl;
}
}