堆排序 hdu 2020 绝对值排序
来源:互联网 发布:三星电话交换机编程 编辑:程序博客网 时间:2024/06/05 17:12
绝对值排序
TimeLimit: 2000/1000 MS(Java/Others)Total Submission(s):15473
Problem Description
输入n(n<=100)个整数,按照绝对值从大到小排序后输出。题目保证对于每一个测试实例,所有的数的绝对值都不相等。
Input
输入数据有多组,每组占一行,每行的第一个数字为n,接着是n个整数,n=0表示输入数据的结束,不做处理。
Output
对于每个测试实例,输出排序后的结果,两个数之间用一个空格隔开。每个测试实例占一行。
Sample Input
3
3 -42
4 0 12 -3
0
Sample Output
-4 3 2
-3 2 1 0
#include<stdio.h>
#include<stdlib.h>
struct node
{
int x;
int y;
}data[1000];
void creatheap(struct node *heap,int root,int len)
{
int done;
int j;
struct node temp;
j=2*root;
temp=heap[root];
done=0;
while(j<=len&&!done)
{
if(j<len)
if(heap[j].y<heap[j+1].y)
j++;
if(temp.y>=heap[j].y)
done=1;
else
{
heap[j/2]=heap[j];
j=2*j;
}
}
heap[j/2]=temp;
}
void heap(struct node *heap,int len)
{
int i;
struct node temp;
for(i=(len/2);i>=1;i--)
creatheap(heap,i,len);
for(i=len-1;i>=1;i--)
{
temp=heap[i+1];
heap[i+1]=heap[1];
heap[1]=temp;
creatheap(heap,1,i);
}
}
void main()
{
}
- 堆排序 hdu 2020 绝对值排序
- HDOJ 2020 绝对值排序
- 2020 绝对值排序
- HDU 1862 EXCEL排序
- (拓扑排序 )hdu 2094 产生冠军
- 拓扑排序 hdu 2647 Reward
- Java排序算法 堆排序
- HDOJ 1862 EXCEL排序
- HDOJ 2000 ASCII码排序
- MYSQL ORDER BY 排序
- 拓扑排序hdu 3342 Legal or Not
- (HDU)1862 EXCEL排序
- java 排序
- iOS 插入排序
- acm1106 排序
- NSArray 排序
- ASTACLIENTDATASET 排序
- qsort 排序
- trie树练习 Hat’s Words
- Unity3D和网页数据交互的基本原理
- trie树Message Flood
- 阿里巴巴程序设计大赛结题报告
- 黑马程序员------面向对象(No.6)(接口、多态)
- 堆排序 hdu 2020 绝对值排序
- (拓扑排序 )hdu 2094 产生冠军
- 排序
- 拓扑排序hdu 3342 Legal or Not
- 拓扑排序 hdu 2647 Reward
- 【考研数学】数学满分秘籍、考研数…
- 阿牛的EOF牛肉串
- 最短路径问题 hdu 3790
- hdu 2544 最短路(dijkstra算法)