您的位置:首页 > 其它

华为OJ——输入整型数组和排序标识,对其元素按照升序或降序进行排序

2016-09-11 12:20 741 查看
输入整型数组和排序标识,对其元素按照升序或降序进行排序

题目描述

输入整型数组和排序标识,对其元素按照升序或降序进行排序

接口说明

原型:

void sortIntegerArray(Integer[] pIntegerArray, int iSortFlag);

输入参数:

    Integer[] pIntegerArray:整型数组

int  iSortFlag:排序标识:0表示按升序,1表示按降序

输出参数:

    无

返回值:

    void

[b]输入描述:[/b]
1、输入需要输入的整型数个数

[b]输出描述:[/b]
输出排好序的数字

[b]输入例子:[/b]
8
1 2 4 9 3 55 64 25
0
 输出例子:

1 2 3 4 9 25 55 64
解答代码:
#include<iostream>
#include<fstream>
#include<string>
#include<cstring>
#include<algorithm>
#include<sstream>
using namespace std;

void sort_0 (int data[],int n)
{
int i,j,index;
for(i=0;i<n;i++)
{
index=i;
for(j=i+1;j<n;j++)
{
if(data[j] < data[index])
index=j;
}
int temp=data[i];
data[i]=data[index];
data[index]=temp;
}
}

void sort_1(int data[],int n)
{
int i,j,index;
for(i=0;i<n;i++)
{
index=i;
for(j=i+1;j<n;j++)
{
if(data[j] > data[index])
index=j;
}
int temp=data[i];
data[i]=data[index];
data[index]=temp;
}
}

int main()
{
int i,n,flag,data[1024];
while(cin >> n)
{
for(i=0;i<n;i++)
cin >> data[i];
cin >> flag;
if(flag==0)
sort_0(data,n);
else
sort_1(data,n);

for(i=0;i<n-1;i++)
cout<<data[i]<<" ";
cout<<data[n-1]<<endl;
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  OJ STL acm 华为