问题标题: 酷町堂:关于排序

0
0
已解决
张马润泽
张马润泽
资深守护
资深守护

桶排序

从小到大排

从大到小排

求最大数

求最小数

 

该怎么求

 

 

(长度定义N)

 

 

(代码简单些)

只用回答一个

 

 

不要举报


0
已采纳
周建勋
周建勋
中级光能
中级光能
 

 

#include <iostream>

 

using namespace std;

 

int count[10001];

 

int main()

 

{

 

int a,n;

 

cin>>n;

 

for(int i=1;i<=n;i++)

 

{

 

cin>>a;

 

count[a]++;

 

}

 

for(int i=0;i<=10001;i++)

 

{

 

if(count[i]>0)

 

{

 

for(int j=1;j<=count[i];j++)

 

cout<<i<<" ";

 

}

 

}

 

return 0;

 

}

望采纳

 

 

附:

 

 

去重排序:

 

#include <iostream>

 

using namespace std;

 

int count[100001];

 

int main()

 

{

 

int a,n;

 

cin>>n;

 

for(int i=1;i<=n;i++)

 

{

 

cin>>a;

 

count[a]++;

 

}

 

for(int i=0;i<=100000;i++)

 

{

 

if(count[i]>0)

 

cout<<i<<" ";

 

}

 

return 0;

 

}

 

 

去重不排序:

 

#include <iostream>

 

using namespace std;

 

int count[100001];

 

int main()

 

{

 

int a[110],n;

 

cin>>n;

 

for(int i=1;i<=n;i++)

 

{

 

cin>>a[i];

 

count[a[i]]++;

 

}

 

for(int i=1;i<=n;i++)

 

{

 

if(count[a[i]]>0)

 

{

 

cout<<a[i]<<" ";

 

count[a[i]]=0;

 

}



 

}

 

return 0;

 

}

 

王欣怡在2018-10-09 18:32:00追加了内容

第一个是从大到小的

0
王欣怡
王欣怡
新手光能
新手光能
#include <iostream>
using namespace std;
int count[10001];
int main()
{
	int a,n;
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		cin>>a;
		count[a]++;
	}
	for(int i=0;i<=10001;i++)
	{
		if(count[i]>0)
		{
			for(int j=1;j<=count[i];j++)
				cout<<i<<" ";
		}
	}
	return 0;
}

望采纳

 

 

附:

去重排序:
#include <iostream>
using namespace std;
int count[100001];
int main()
{
	int a,n;
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		cin>>a;
		count[a]++;
	} 
	for(int i=0;i<=100000;i++)
	{
		if(count[i]>0)
			cout<<i<<" ";
	}
	return 0;
} 
去重不排序:
#include <iostream>
using namespace std;
int count[100001];
int main()
{
	int a[110],n;
	cin>>n;
	for(int i=1;i<=n;i++)
	{
		cin>>a[i];
		count[a[i]]++;
	}
	for(int i=1;i<=n;i++)
	{
		if(count[a[i]]>0)
		{
			cout<<a[i]<<" ";
			count[a[i]]=0;
		} 
			
	}
	return 0;
} 

 

王欣怡在2018-10-09 18:32:00追加了内容

第一个是从大到小的

0
丁政元
丁政元
初级光能
初级光能
int a[i],n;
    cin>>n;
    for(int i=0;i<n;i++){
        cin>>a[i];
    }
    sort(a,a+n);
    for(int i=0;i<n;i++){
        cout<<a[i]<<" ";
    }

                                                                                                                                                       --------从小到大

                                                                                                                 --------(头文件)#include<algorithm>

int x(int c,int d){
    return c>d;
}
int main(){
    int n,a[1000];
    cin>>n;
    for(int i=0;i<n;i++){
        cin>>a[i];
    }
    sort(a,a+n,x);
    for(int i=0;i<n;i++){
        cout<<a[i]<<" ";
    }

                                                                                                                                                       --------从大到小

                                                                                                                 --------(头文件)#include<algorithm>

int a[i],n,k=0;
    cin>>n;
    for(int i=0;i<n;i++){
        cin>>a[i];
        if(k<a[i])
        k=a[i];
    }
    cout<<k;

                                                                                                                                                       --------求最大数

#include<iostream>
using namespace std;
int main(){
    int a[i],n,k=100000;//注:k并不是一定得是100000,是最大值
    cin>>n;
    for(int i=0;i<n;i++){
        cin>>a[i];
        if(k>a[i])
        k=a[i];
    }
    cout<<k;
return 0;
}

                                                                                                                                                       --------求最大数

0
陈天宇
陈天宇
资深守护
资深守护

桶排:flag[a[i]]++;

从小到大:sort(a+1,a+n+1);

从大到小:sort(a+1,a+n+1,cmp);

int cmp(int x,int y){
return x>y;

0
陈天宇
陈天宇
资深守护
资深守护

桶排:flag[a[i]]++;

从小到大:sort(a+1,a+n+1);

从大到小:sort(a+1,a+n+1,cmp);

int cmp(int x,int y){
return x>y;

0
0
0
尹宗鑫
尹宗鑫
新手守护
新手守护

桶排:flag[a[i]]++;

从小到大:sort(a+1,a+n+1);

从大到小:sort(a+1,a+n+1,cmp);

int cmp(int x,int y){
return x>y;

}

0
尹宗鑫
尹宗鑫
新手守护
新手守护

最大:

if(max1<a)

max1=a;

最小:

if(min1>a)

min1=a;

0
夏天
夏天
中级守护
中级守护

最大:

if(max1<a)

max1=a;

最小:

if(min1>a)

min1=a;

0
丁振轩
丁振轩
资深光能
资深光能

大小一样(改一个字符)。

我要回答