训练计划的第一个问题,首先从水问题开始:排序的数组,中间数则输出。

http://poj.org/problem?id=2388

冒泡排序:

#include <iostream>

using namespace std;

int main()
{
int i, j, n,t;
int a[10000];
cin>>n;
for(i=0; i<n; i++)
{
cin>>a[i];
} //冒泡排序
for(i=0; i<n-1; i++)
for(j=0; j<n-i-1; j++)
if(a[j]<a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t;
} cout<<a[n/2]<<endl;
return 0;
}

高速排序:

#include <iostream>

using namespace std;

//高速排序
void qsort(int a[ ], int l, int r)
{
int x=a[l], i=l, j=r;
if(l>=r) return;
while(i<j)
{
while(i<j && a[j]>=x) j--;
a[i]=a[j];
while(i<j && a[i]<=x) i++;
a[j]=a[i];
}
a[i]=x;
qsort(a,l,i-1);
qsort(a,i+1,r);
}
int main()
{
int i, n;
int a[10000];
cin>>n;
for(i=0; i<n; i++)
{
cin>>a[i];
}
qsort(a,0,n-1);
cout<<a[n/2]<<endl;
return 0;
}

版权声明:本文博客原创文章。博客,未经同意,不得转载。

2388 Who&#39;s in the Middle(简单排序)的更多相关文章

  1. poj 2388 Who&#39;s in the Middle

    Who's in the Middle Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 31149   Accepted: 1 ...

  2. Java数据结构和算法之数组与简单排序

    一.数组于简单排序 数组 数组(array)是相同类型变量的集合,可以使用共同的名字引用它.数组可被定义为任何类型,可以是一维或多维.数组中的一个特别要素是通过下标来访问它.数组提供了一种将有联系的信 ...

  3. 简单排序算法 C++类实现

    简单排序算法: 冒泡排序 插入排序 选择排序 .h代码: // // SortClass.h // sort and selection // // Created by wasdns on 16/1 ...

  4. iOS简单排序--字母排序、NSDictionary排序

    // 数组用系统方法compare做字母的简单排序 NSArray *oldArray = @[@"bac",@"bzd",@"azc",@ ...

  5. 简单排序算法设计(Java)

    总共有八种排序算法,还是慢慢看吧 1.简单排序算法 简单排序算法就是设置标兵,逐个比较数,然后查找插入位置,插入 public static void p(int[] a){ for(int i=0; ...

  6. Java数据结构和算法 - 简单排序

    Q: 冒泡排序? A: 1) 比较相邻的元素.如果第一个比第二个大,就交换它们两个; 2) 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对.在这一点,最后的元素应该会是最大的数; 3) 针 ...

  7. 《Algorithms算法》笔记:元素排序(1)——简单排序

    <Algorithms算法>元素排序(1)——简单排序 Algorithms算法元素排序1简单排序 排序问题 1 回调函数 2Java中回调函数的路线图 3 全序 4 Comparable ...

  8. JavaScript中简单排序总结

    JavaScript中简单排序总结 冒泡排序 经典排序算法, 双重for循环 在第二个for循环的时候, j < arr.len -1 -i , 这一步的优化很重要 function bullS ...

  9. 《java数据结构与算法》系列之“简单排序"-冒泡,选择,插入

    好几天又没写,因为这几天很闲,平时忙的时候自己再累都不会睡着,但是呢这没事了,照理说应该是不瞌睡了,结果还睡着了. 所以说,人很贱.也验证了一句话,没有目标的人其实最无聊.人一定要有自己的工作,这工作 ...

随机推荐

  1. File 操纵目录

    mkdir()   创建目录 不可及联创建    即父路径中一旦有不存在文件夹  即创建失败 mkdirs() 创建目录,及联创建 list() 列出目录内所包含的文件名(string) listFi ...

  2. 基于visual Studio2013解决C语言竞赛题之0608水仙花函数

     题目 解决代码及点评 /* 功能:写一函数判断某数是否"水仙花数",所谓"水仙花数"是指一个三位数, 其各位数字立方和等于该数本身. */ #includ ...

  3. OC中线程的状态相关

    1.线程的状态NSThread *thread = [[NSThread alloc] initWithTarget:self selector:@selector(run) object:nil]; ...

  4. js注册检测 用户名、密码、手机号、邮箱

    请输入电话号码:<input name="" type="text" id="telphone" value="" ...

  5. mmc生产运输投资问题

    本题目,有生产,运输和投资,由于能力不能满足需求, 要扩大生产规模.

  6. Scala中Stream的应用场景及事实上现原理

    欢迎訪问我的独立博客:http://cuipengfei.me/blog/2014/10/23/scala-stream-application-scenario-and-how-its-implem ...

  7. Swift - 手机摇晃的监测和响应

    摇晃手机也是一种常用的交互手段(比如微信摇一摇功能).iOS SDK中已经将shake事件方便地融合进去了,就像触发touch事件一样简单,发生摇晃事件后程序会自动执行. 1 2 3 4 5 6 7 ...

  8. EasyUI - Panel 面板控件

    效果: html代码: <div id="p" style="padding: 10px;"> <p>panel content.< ...

  9. 关于new enhancement的一些知识

    关于new enhancement sap源程序里也给我们留了很多. 以下例句point .section.spot说明这些知识点. 1.不管是point还是section 都是基于spot的,spo ...

  10. 24篇HTTP博客

    http://www.cppblog.com/woaidongmao/category/11721.html