#include<iostream>
#include <iostream>
#include <bitset>
#include <ctime>
using namespace std; template <size_t UpperBound> class Urand{ //生成随机数
bitset<UpperBound> used;
public:
Urand(){ srand(time(0)); }
double operator() ();
}; template<size_t UpperBound>
inline double Urand<UpperBound>::operator()()
{
if(used.count() == UpperBound)
used.reset();
size_t newval;
while(used[newval = rand() % UpperBound])
;
used[newval] = true;
return newval*0.1;
} int main(int argc, char* argv[])
{
Urand<10> u;
double darr[10];
double first = 0.0;
double second = 0.0;
double min = 0.0;
double max = 0.0;
for ( int i = 0; i < 10; ++i)
{
darr[i] = u();
} int num = sizeof(darr)/sizeof(darr[0]);
bool flag = false; if( num%2==0 )
{
flag = true;
}
else
{
flag = false;
} if(flag)
{
int i= 0;
first = darr[0];
second = darr[1];
if(first<second)
{
min = first;
max = second;
}
else
{
min = second;
max = first;
}
}
else
{
min = darr[0];
max = darr[0];
} for( flag? i=2 : i=1; i<num; i+=2 )
{
if( darr[i]<darr[i+1] )
{
if( min>darr[i] )
{
min = darr[i];
}
if( max<darr[i+1] )
{
max = darr[i+1];
}
}
else
{
if( min>darr[i+1] )
{
min = darr[i+1];
}
if( max<darr[i])
{
max = darr[i];
} }
} cout<<"Max :"<<max<<endl;
cout<<"Min :"<<min<<endl;
return 0;
}

求最大值最小值的方法 时间复杂度O(n)的更多相关文章

  1. html标签内部简单加js 一维数组求最大值 最小值两个值位置和数字金字塔图形

     html标签内部,简单加js <a href=""></a><!DOCTYPE html PUBLIC "-//W3C//DTD XHTM ...

  2. C++数组或vector求最大值最小值

    可以用max_element()及min_element()函数,二者返回的都是迭代器或指针. 头文件:#include<algorithm> 1.求数组的最大值或最小值 1)vector ...

  3. js求最大值最小值

    比较数组中数值的大小是比较常见的操作,比较大小的方法有多种,比如可以使用自带的sort()函数,代码如下: <html> <head> <meta charset=&qu ...

  4. java求最大值以及定义方法调用

    class ArrayDome { public static void main(String[] args) { int[] arr = {-12,-51,-12,-11}; int max = ...

  5. Tunnel Warfare (区间合并|最大值最小值巧妙方法)

    Tunnel Warfare http://acm.hdu.edu.cn/showproblem.php?pid=1540 Time Limit: 4000/2000 MS (Java/Others) ...

  6. Day_11【集合】扩展案例5_对list集合对象中的元素进行反转,求最大值最小值,求元素i在list集合中首次出现的索引,将oldvalue替换为newvalue

    分析以下需求,并用代码实现 定义MyArrays工具类,该工具类中有以下方法,方法描述如下: 1.public static void reverse(ArrayList<Integer> ...

  7. C++中Vector求最大值最小值

    vector<int> v: 最大值: int max = *max_element(v.begin(),v.end()); 最小值: int min = *min_element(v.b ...

  8. 【C++】Vector求最大值最小值

    最大值: int max = *max_element(v.begin(),v.end()); 最小值: int min = *min_element(v.begin(),v.end());

  9. MapReduce求最大值最小值问题

    import java.io.File; import java.io.IOException; import org.apache.hadoop.conf.Configuration; import ...

随机推荐

  1. 每个页面的Title样式

    <style>.zc_lan14 {}{    TEXT-ALIGN: center; FONT-FAMILY: "微软雅黑"; MARGIN-BOTTOM: 3px; ...

  2. activemq的两种基本通信方式的使用及总结

    简介 在前面一篇文章里讨论过几种应用系统集成的方式,发现实际上面向消息队列的集成方案算是一个总体比较合理的选择.这里,我们先针对具体的一个消息队列Activemq的基本通信方式进行探讨.activem ...

  3. 安装 GitStack 提示 80 端口 被 SYSTEM PID4 占用

    任务管理器 - 服务 W3SVC - World Wide Web Publishing Service  停止服务.

  4. robot framework环境搭建和简单示例

    环境搭建 因为我的本机已经安装了python.selenium.pip等,所以还需安装以下程序 1.安装wxPythonhttp://downloads.sourceforge.net/wxpytho ...

  5. codeforces 631C. Report

    题目链接 按题目给出的r, 维护一个递减的数列,然后在末尾补一个0. 比如样例给出的 4 21 2 4 32 31 2 递减的数列就是3 2 0, 操作的时候, 先变[3, 2), 然后变[2, 0) ...

  6. poj 1966 Cable TV Network 顶点连通度

    题目链接 给一个图, n个点m条边, 求至少去掉多少个点可以使得图不再联通.随便指定一个点为源点, 枚举其他点为汇点的情况, 跑网络流, 求其中最小的情况. 如果最后ans为inf, 说明是一个完全图 ...

  7. [Java]使用队列求解josephus问题

    约瑟夫斯问题(有时也称为约瑟夫斯置换),是一个出现在计算机科学和数学中的问题.在计算机编程的算法中,类似问题又称为约瑟夫环. 有个囚犯站成一个圆圈,准备处决.首先从一个人开始,越过个人(因为第一个人已 ...

  8. SQL Server 多表删除

    第一步: 建表 create table t1(x int, y int); create table t2(x int, y int); go insert into t1(x,y) values( ...

  9. 激活工具 – Microsoft Toolkit 2.4.7

    Microsoft Toolkit是一款很出名的Windows/Office激活工具,最早是因为激活Office 2010出名的,想必不少人也用过吧?Microsoft Toolkit从2.4.1版本 ...

  10. 解决Flex4 发布后访问 初始化极其缓慢的问题

    原文http://blog.163.com/vituk93@126/blog/static/170958034201282222046364/ 昨天找了个免费.net空间,想测试一下做的一个简单Fle ...