PTA 求自定类型元素序列的中位数,冒泡超时,改为希尔排序
来源:互联网 发布:lte mrr弱覆盖优化 编辑:程序博客网 时间:2024/04/30 14:57
4-11 求自定类型元素序列的中位数 (25分)
冒泡最后两个测试过不了
关于希尔排序这篇博文 :http://blog.csdn.net/morewindows/article/details/6668714
本题要求实现一个函数,求N
个集合元素A[]
的中位数,即序列中第⌊N/2+1⌋大的元素。其中集合元素的类型为自定义的ElementType
。
函数接口定义:
ElementType Median( ElementType A[], int N );
其中给定集合元素存放在数组A[]
中,正整数N
是数组元素个数。该函数须返回N
个A[]
元素的中位数,其值也必须是ElementType
类型。
裁判测试程序样例:
#include <stdio.h>#define MAXN 10typedef float ElementType;ElementType Median( ElementType A[], int N );int main (){ ElementType A[MAXN]; int N, i; scanf("%d", &N); for ( i=0; i<N; i++ ) scanf("%f", &A[i]); printf("%.2f\n", Median(A, N)); return 0;}/* 你的代码将被嵌在这里 */
输入样例:
312.3 34 -5
输出样例:
12.30
ElementType Median( ElementType A[], int N ){ for(int i = 0; i < N; i++) { for(int j = 0; j < N; j++) { if(A[i] < A[j]) { ElementType t = A[j]; A[j] = A[i]; A[i] = t; } } } //for(int i = 0; i < N; i++)printf("%f ", A[i] ); return A[N/2];}
冒泡最后两个测试过不了
改为希尔
ElementType Median(ElementType A[], int N){ int i, j, Increment; ElementType Tmp; for (Increment = N / 2; Increment > 0; Increment /= 2) { //设置增量,一般为数组长度的一半 for (i = Increment; i < N; i++) { Tmp = A[i];//将A[5]的值存到临时变量temp中 for (j = i; j >= Increment; j -= Increment) { if (Tmp < A[j - Increment])//如果A[5]的值小于A[0],则把A[0]的值赋给A[5] { A[j] = A[j - Increment]; } else break; } A[j] = Tmp;//因为J经过递减,此时A[J]其实为A[0],把TEMP中A[5]的初始值赋予A[0],完成两个位置的值的交换 } } return A[N / 2];}
关于希尔排序这篇博文 :http://blog.csdn.net/morewindows/article/details/6668714
0 0
- PTA 求自定类型元素序列的中位数,冒泡超时,改为希尔排序
- PTA 4-11 求自定类型元素序列的中位数 (25分)
- PTA 6-11 求自定类型元素序列的中位数
- 4-11 求自定类型元素序列的中位数
- 求自定类型元素序列的中位数 PAT
- 求自定类型元素序列的中位数
- 4-11 求自定类型元素序列的中位数
- 4-11 求自定类型元素序列的中位数*
- 求自定类型元素序列的中位数
- 6-11 求自定类型元素序列的中位数
- PAT练习基础编程题目之求自定类型元素序列的中位数
- PAT-C-4-11 求自定类型元素序列的中位数 (25分)
- 4-11 求自定类型元素序列的中位数 (25分)
- 4-11 求自定类型元素序列的中位数 (25分)
- 4-11 求自定类型元素序列的中位数 (25分)
- 4-11 求自定类型元素序列的中位数 (25分)
- PAT基础题 4-11 求自定类型元素序列的中位数
- 6-11 求自定类型元素序列的中位数(25 分)
- CATextLayer与CAGradientLayer实现文字渐变的动画效果
- 总结 XSS 与 CSRF 两种跨站攻击
- ios UIAlertController
- 添加唤醒键
- 报错信息:Caused by: org.hibernate.NonUniqueObjectException: a different object with the same identifier
- PTA 求自定类型元素序列的中位数,冒泡超时,改为希尔排序
- Opengl Shader发光线条实例
- 博弈问题
- 个人常用JavaScript及React常用优化总结
- 安卓输入框,只输入中文,屏蔽中英文标点和表情
- 数字图像梯形畸变校正
- L1-011. A-B Java
- 异常处理
- http各个状态返回值