求最大值最小值的方法 时间复杂度O(n)
#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)的更多相关文章
- html标签内部简单加js 一维数组求最大值 最小值两个值位置和数字金字塔图形
html标签内部,简单加js <a href=""></a><!DOCTYPE html PUBLIC "-//W3C//DTD XHTM ...
- C++数组或vector求最大值最小值
可以用max_element()及min_element()函数,二者返回的都是迭代器或指针. 头文件:#include<algorithm> 1.求数组的最大值或最小值 1)vector ...
- js求最大值最小值
比较数组中数值的大小是比较常见的操作,比较大小的方法有多种,比如可以使用自带的sort()函数,代码如下: <html> <head> <meta charset=&qu ...
- java求最大值以及定义方法调用
class ArrayDome { public static void main(String[] args) { int[] arr = {-12,-51,-12,-11}; int max = ...
- Tunnel Warfare (区间合并|最大值最小值巧妙方法)
Tunnel Warfare http://acm.hdu.edu.cn/showproblem.php?pid=1540 Time Limit: 4000/2000 MS (Java/Others) ...
- Day_11【集合】扩展案例5_对list集合对象中的元素进行反转,求最大值最小值,求元素i在list集合中首次出现的索引,将oldvalue替换为newvalue
分析以下需求,并用代码实现 定义MyArrays工具类,该工具类中有以下方法,方法描述如下: 1.public static void reverse(ArrayList<Integer> ...
- C++中Vector求最大值最小值
vector<int> v: 最大值: int max = *max_element(v.begin(),v.end()); 最小值: int min = *min_element(v.b ...
- 【C++】Vector求最大值最小值
最大值: int max = *max_element(v.begin(),v.end()); 最小值: int min = *min_element(v.begin(),v.end());
- MapReduce求最大值最小值问题
import java.io.File; import java.io.IOException; import org.apache.hadoop.conf.Configuration; import ...
随机推荐
- MATLAB中return和break
return: RETURN Return to invoking function. RETURN causes a return to the invoking function or to th ...
- U盘安装CentOS6.x报错:Missing ISO 9660 Image
以前都是DVD安装CentOS,这次因为装固态硬盘,然后把光驱给卸载了.所以就尝试用U盘引导安装CentOS,结果安装时竟然出现了Missing ISO 9660 Image的错误. 解决方案: 将C ...
- Filemanager 的使用
filemanager的使用包括: 1.创建文件夹 2.删除文件夹 3.写入文件 4.复制文件 5.移动文件 6.删除文件 一.创建文件夹 首先宏的定义一个字符串作为地址的来获取当前的docum ...
- ##DAY9 UITabBarController
##DAY9 UITabBarController UIViewController的tabBarController UIViewController的tabBarItem #pragma mark ...
- Hyper-v 安装CentOS
http://www.cnblogs.com/dunitian/p/4976077.html
- springmvc入门demo
目录结构: package com.wyl; import org.springframework.stereotype.Controller; import org.springframework. ...
- poj 3740 Easy Finding 精确匹配
题目链接 dlx的第一题, 真是坎坷..... #include <iostream> #include <vector> #include <cstdio> #i ...
- JDK的目录结构及结构图
-bin目录: JDK开发工具的可执行文件 -lib目录: 开发工具使用的归档包文件 -jre: Java 运行时环境的根目录,包含Java虚拟机,运行时的类包和Java应用启动器, ...
- openStack openSource CloudComputing
<一,> ,OpenStack a few Core Compontents integration with openStack-keystone Identity service1.1 ...
- PHPRPC for PHP
14的路 PHPRPC for PHP PHPRPC 是一个轻型的.安全的.跨网际的.跨语言的.跨平台的.跨环境的.跨域的.支持复杂对象传输的.支持引用参数传递的.支持内容输出重定向的.支持分级错误处 ...