桶排序2

#include <iostream>
#include <bits/stdc++.h> 
using namespace std;
/*
桶排序思想:
把每个数组开辟的空间看作一个桶,
将与桶编号相同的数据存入桶中

1 3 5 7 9 8 6 4 2 10 数据b[]
开辟桶的个数大于数据最大值
第一步:桶内初始化为0
第二步:判断数据存入桶中 
 a[11] 
 a[0]...a[10]
if(i==b[j])
a[i]++;
第三步输出:
if(a[i]!=0){
	i
	a[i]--;
}
*/
int main(){
	int a[10]={1,2,3,4,5,6,7,8,9,10};
	int b[1000];
	memset(b,0,sizeof(b));//数组全部初始化为0
	/*
		for(int i=0;i<1000;i++){
			b[i]=0;
		}
	*/
	for(int i=0;i<10;i++){
		b[a[i]]++;
	}
	for(int i=0;i<1000;i++){
		while(b[i]!=0){
			cout<<i<<" ";
			b[i]--;
		}
	}
	return 0;
}

  

posted @ 2024-11-10 09:50  最后一个还有我  阅读(11)  评论(0)    收藏  举报