CÓïÑÔðÅÝÅÅÐò£º
¶¨Ò壺´ÓµÚÒ»¸öÊý¿ªÊ¼£¬ºÍÆäºóÃæµÄµÚÒ»¸öÊý±È½Ï£¬Èô´óÖ®£¬Ôò½»»»£¬·ñÔò£¬ºÍµÚÈý¸öÊý±È½Ï£¬Ö±µ½µÚÒ»¸öÊýºÍËùÓеÄÊý¶¼±È½ÏÍ꣬Íê³ÉµÚÒ»ÌËÅÅÐò£¬²¢Ñ¡³öÁË×î´óµÄÒ»¸öÊý£¬ÅÅÔÚÁË×îºóÃæ£¬È»ºóÔÚ½«µÚÒ»ÌËÅÅÐòºÃµÄÊý×éµÄµÚÒ»¸öÊýºÍºóÃæµÄÊýÒÀ´Î±È½Ï£¬²»±ØºÍ×îºóÒ»¸öÊý±È½ÏÁË£¬ÒòΪ×îºóÒ»¸öÊýÊÇ×î´óÊýÁË¡£Èç´Ë£¬µÚÈýÌËÅÅÐò²»±ØºÍ×îºóÁ½¸öÊý±È½ÏÁË¡£µ±¶àÓеÄÊý¶¼±È½Ï¹ýºó£¬ÅÅÐòÍê³É¡£
´úÂëÈçÏ£º
#include
#include
int main(int argc, char *argv[])
{
int a[]={4,5,2,6,9,7,5,74,56,89,132};
Bubble(a,11);
int i=0;
for(;i<11;i++)
{
printf("%d:%d\n",i,a[i]);
}
return 0;
}
void Bubble(int a[],int len)
{
int length=len;
int i=0;
int j=0;
for(;i {
for(;j {
if(a[j]>a[j+1])
{
int temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
length--;
j=0;
}
}
¿ìËÙÅÅÐò£º
¶¨Ò壺½«ÒªÅÅÐòµÄÊý×é·Ö³ÉÁ½¿é£¬ÆäÖÐÒ»¿éµÄÿһ¸öÊý¶¼Ð¡ÓÚÁíÒ»¿éÖеÄÿһ¸öÊý¡£
·½·¨£º1 È¡µÚÒ»¸öÊý×÷Ϊ±ê×¼
2 ´ÓÊý×éµÄ×îºóÃæ¿ªÊ¼£¬½«×îºóÒ»¸öÊýºÍ±ê×¼£¨µÚÒ»¸öÊý£©¶Ô±È£¬´óÓÚ±ê×¼£¬È¡µ¹ÊýµÚ¶þ¸öÊýºÍ±ê×¼¶Ô±È£¬Ò»´ÎÀàÍÆ£¬ÈôСÓÚ±ê×¼½«±ê×¼ºÍ¸ÃÊý½»»»¡£
3 ´ÓÇ°ÃæµÚ¶þ¸öÊý¿ªÊ¼£¬Óë±ê×¼±È½Ï£¬´óÓÚ±ê×¼£¬½»»»£¬·ñÔòÒ»Ö±ÏòÏÂÕÒ¡£
4 µ±´ÓºóÃæµÄÊýºÍ´ÓÇ°ÃæµÄÊýÏàµÈµÄʱºò£¬µÚÒ»ÌËÅÅÐòÍê³É¡£
5 ÀûÓõݹ飬Íê³ÉʣϵÄÅÅÐò¡£
´úÂ룺
void quick(int a[],int orign,int length)
{
if(orign>=length)
{
return;
}
int temp=a[orign];
int lengthnum=length;
int i=orign;
while(i!=lengthnum)
{
while(a[i] {
lengthnum--;
}
if(i {
int temp=a[i];
a[i]=a[lengthnum];
a[lengthnum]=temp;
i++;
}
while(a[lengthnum]>a[i]&&i {
i++;
}
if(i {
int temp=a[i];
a[i]=a[lengthnum];
a[lengthnum]=temp;
lengthnum--;
}
}
quick(a,0,i-1);
quick(a,lengthnum+1,length);
}