由一段小程序看算法复杂度

今天被要求写一段程序,题目如下; 已知过去四周内20个交易日天内黄金的价格,求过去20天内最大差值?

a[20]={2,5,1,6,7,9,10,18...1}

我当时想的是差值,肯定是两天交易日之间的差值,第1天与第2天之间的差值,第2天与第3天之间的差值,第一天与第三天之间的差值,他们之间的最大值??

于是,很有自信地写了:

    int a[20]={2,5,1,6,7,9,10,18...1};
    int b[19]={0};
    int max=0;
    for(int m=1;m<20;m++)
    {
		int tempmax=0;
		//存储差值数据
		for(int n=0;n<19;n++)
		{
			b[n]=0;
		}
		//计算差值
		for(int i=m;i<m;m++)
		{
			b[i]=a[i]-a[i-1];
		}
		//求差值中最大值
		for(int n=0;n<19;n++)
		{
			if(b[n]>tempmax)
			{
              tempmax=b[n];
			}
		}
		if(tempmax>max)
		{
			max=tempmax;
		}
    }

两天之差,我的算法复杂度n*(n-1)*(n-2)**1;

同学们,我的代码写得对吗?这代码写得多好呀!!我很得意。。

精彩时刻就要来了,我先插播一则广告。。

最好的电力模型检测工具、最好的电力通讯测试工具尽在(http://www.mms61850.com/_d4.htm);

最好的电力模型检测工具、最好的电力通讯测试工具尽在(http://www.mms61850.com);

最好的电力模型检测工具、最好的电力通讯测试工具尽在(http://www.mms61850.com);

最好的电力模型检测工具、最好的电力通讯测试工具尽在(http://www.mms61850.com);

最好的电力模型检测工具、最好的电力通讯测试工具尽在(http://www.mms61850.com);

最好的电力模型检测工具、最好的电力通讯测试工具尽在(http://www.mms61850.com);

最好的电力模型检测工具、最好的电力通讯测试工具尽在(http://www.mms61850.com);

我要的是任意两天之间的最大差值,不一定要两天之间差值,我们不要两天之间的差值,把这个弯转过来,好办了。

我得到最大值与最小值,那么他们之间的差值是不是任意两天的最大差值呢??

 1 int a[20]={2,5,1,6,7,9,10,18...1};
 2     //最大值
 3     int tempmax=a[0];
 4     //最小值
 5     int tempmin=a[0];
 6     int max;
 7     for(int m=1;m<20;m++)
 8     {
 9         if(a[m]>tempmax)
10         {
11           tempmax=a[m];
12         }
13         else if(a[m]<tempmin)
14         {
15           tempmin=a[m];
16         }
17     }
18     //结果就算我们需要的
19     max= tempmax-tempmin;

算法复杂度为n。
   不同的实现方式,差距很大。。。

呵呵,多想想,办法总比困难多!

时间: 2024-10-09 20:18:55

由一段小程序看算法复杂度的相关文章

C++11,控制台输出的一段小程序。

#include <iostream> // std::cout, std::boolalpha, std::noboolalpha int main () { bool b = true; std::cout << std::boolalpha << b << '\n'; //把bool表示为alpha std::endl(std::cout); //把它当成一个函数来使用. std::cout << std::noboolalpha <

极限工坊资讯:小程序的算法说明,让运营不是难事|淘小咖

近期传统行业不断进军小程序,对小程序进行布局,但是很多拥有小程序的商家,都不知道怎么去运营.去推广 ,所以今天才会根据大众的苦恼,给大家讲讲小程序的算法. 算法说明: 1.给予营销实践对于小程序应用的推动价值,可动态反应小程序应用变化,而且极限工坊后台可以查看实时数据: 2.选取人气.搜索.使用.分享共四大指标,综合考虑多指标要素,全方位覆盖小程序应用全流程主要环节: 3.评估小程序在每个指标下的相对位置,可单独比较单一唯独指标,也可多维度综合比较. 选取指标说明: (1)人气指标 UV,止痛剂

微信小程序看上去很美

目前不少关于 微信小程序 的文章主要集中在两各方面:一是开发技术细节:二是怎么靠此赚钱. -- “微信小程序”所处的环境 -- 2016年初,美国号召全民学编程,包括监狱服刑人员.同样,在中国要想掌握 HTML.JavaScript 和 SQL 技术也越来越容易,懂得毛皮的人也越来越多.加上政府近几年鼓励年轻人创业,尤其是“互联网+”概念,让很多人有创业的冲动:找几个朋友谋划个创业点子,找个懂点 HTML+JavaScript+SQL 技术的人合伙,不用营业执照,不用租用场地,未来之星就此诞生.

通过微信小程序看前端

前言 2016年9月22日凌晨,微信官方通过“微信公开课”公众号发布了关于微信小程序(微信应用号)的内测通知.整个朋友圈瞬间便像炸开了锅似的,各种揣测.介绍性文章在一夜里诞生.而真正收到内测邀请的公众号据说只有200个. 虽然内测名额十分稀少,但依赖中国广大开发者的破解和分享精神,在网络上很快出现了开发工具的破解版本和API文档.然而可能是微信的妥协或者早已预料,9月24日微信官方发布了不需要破解就可以使用的微信小程序开发者工具和文档,对于费劲心思破解完的开发者来说应该瞬间整个人都不好了. 以下

【C语言】第一个C语言小程序 —— 日期算法和万年历

1. 写了个万年历的功能练练手.还没有写交互的代码,只是把方法写完了.先给出头部和方法签名 #include<stdio.h> #define DAYS_PER_WEEK 7 #define MONTHS 12 #define DATE_HEADER " Sun Mon Tues Wed Thur Fri Sat" int get_days(int, int, int); //返回从公元元年算起,某年某月某日是第几天, 用这个数字算星期几 int days_of_year(

金华网络公司:微信小程序的8个误区

小程序目前被炒得沸沸扬扬,无数媒体和企业借机获取阅读流量.这再次证明一点,微信想让什么火,真的就能让什么火.这种能力真是全中国再也没有人有了,政府也没有.但四处传的消息很多是失真的,废话不说,先列 ... 作者:金华腾云科技(钟先生18606796001) 小程序目前被炒得沸沸扬扬,无数媒体和企业借机获取阅读流量. 这再次证明一点,微信想让什么火,真的就能让什么火.这种能力真是全中国再也没有人有了,政府也没有. 但四处传的消息很多是失真的,废话不说,先列出8个多数人都搞错的问题: 1.小程序是H

vb小程序浅析

系统 : Windows xp 程序 : BJCM10B 程序下载地址 :http://pan.baidu.com/s/1dFyXe29 要求 : 编写注册机 使用工具 : OD 可在看雪论坛中查找关于此程序的破文:传送门 这个小程序本身算法不难,就是vb的函数调用方式真的太奇葩了,容易看得一头雾水. 直接根据“good job, tell me how you do that!”字串找出关键算法: 00404563 . FFD3 call ebx ; (initial cpu selectio

微信小程序,大多数人误解的8个问题

作者:王安,数字天堂DCloud公司创始人兼CEO 注:本文内容包含技术.商业,不懂技术的读者可以只看商业相关的内容.本文仅代表作者一家之言,如有不同意见,欢迎留言讨论~ 8个误解 坊间所传的信息很多是失真的,这里先列出多数人会误解的8个问题. 小程序是HTML5 小程序是b/s的 把M站改改就可以接入到小程序里 小程序体验不佳 小程序适合低频长尾应用 小程序是新的Appstore 小程序做不起来,需求不高 小程序会做起来,但会和原生应用长期并存 以上8点是很多人凭直觉得出的结论,但真正深度调研

微信小程序开发教程,大多数人都搞错的八个问题

小程序目前被炒得沸沸扬扬,无数媒体和企业借机获取阅读流量. 这再次证明一点,微信想让什么火,真的就能让什么火.这种能力真是全中国再也没有人有了,政府也没有. 但四处传的消息很多是失真的,废话不说,先列出8个多数人都搞错的问题: 小程序是HTML5: 小程序是B/S的: 把M站改改就可以接入到小程序里: 小程序体验不佳: 小程序适合低频长尾应用: 小程序是新的Appstore: 小程序做不起来,需求不高: 小程序会做起来,但会和原生应用长期并存. 以上8个是很多人凭直觉得出的结论,但真正深度调研和