排序专题1

1.1 选择排序

void selection_sort(int order_item[],int Number_of_items)
{
	int minl;
	for(int i=0;i<Number_of_items-1;i++)
	{minl=i;
		for(int j=i+1;j<Number_of_items;j++)
		{
			if(order_item[j]<order_item[minl])minl=j;
		}
		if(minl!=i)swap(order_item[i],order_item[minl]);
		
	}
}

1.2 冒泡排序

void buble_sort(int order_item[],int Number_of_items)
{
    int i,j;
    for(i=0;i<Number_of_items-1;i++)
    {
    	for(j=0;j<Number_of_items-1-i;j++)
    		if(order_item[j+1]<order_item[j])swap(order_item[j+1],order_item[j]);
	}
}

1.3 木桶排序

void bucket_sort(int Number_of_items,int Number_Max,string output_connector)
{
	int x,i,j;
	int pd[Number_Max+1];
	format(pd,0,Number_Max+1);
	for(i=1;i<=Number_of_items;i++)
	{
		cin>>x;
		pd[x]++;
	 } 
	 for(i=0;i<=Number_Max;i++)
	 {
	 	for(j=1;j<=pd[i];j++)cout<<i<<output_connector;
	 }
}


posted @ 2020-01-18 22:27  0xsf  阅读(59)  评论(0)    收藏  举报