关闭

HDU 2020 绝对值排序

262人阅读 评论(0) 收藏 举报
分类:
/***********************
*Programme:绝对值排序
*Programmer:By
*Date:2016/05/30
************************/
#include<iostream>
#include<cstdlib>
using namespace std;
int main()
{
    int n;
    int arr[105];
    while(cin >> n,n != 0){
        for(int i = 0;i < n;i ++){
            cin >> arr[i];
        }
        //冒泡排序法
        int tem;
	    for(int i=0;i<n;i++){
            for(int j=0;j<n-1-i;j++){
                if(abs(arr[j])<abs(arr[j+1])){
                    tem=arr[j];
                    arr[j]=arr[j+1];
                    arr[j+1]=tem;
                }//end of if
            }//end of inner for
	    }//end of outer for
	    for(int i = 0;i < n;i ++){//注意输出格式
	        if(i != n-1) cout << arr[i] <<" ";
            else cout << arr[i]<<endl;
	    }
    }
    return 0;
}

//还可以用sort函数
#include<iostream>
#include<algorithm>
#include<cstdlib>
using namespace std;
bool compare(int a,int b)
{
	return abs(a)>abs(b);
}
int main(void)
{
	int n;
	while(cin >> n && n)
	{
		int arr[105];
		for(i = 0;i < n;i ++)
			cin >> arr[i];

		sort(a,a+n,compare);

		for(i = 0;i < n;i ++){
			if(i)
                cout << " ";
			cout << a[i];
		}
		cout << endl;
	}
}

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:48416次
    • 积分:544
    • 等级:
    • 排名:千里之外
    • 原创:16篇
    • 转载:0篇
    • 译文:0篇
    • 评论:6条
    文章分类
    最新评论