当前位置: 首页 > news >正文

网站如何做修改密码的相关验证网络营销服务有哪些

网站如何做修改密码的相关验证,网络营销服务有哪些,南昌开发公司,做网站 花园路国贸什么是算法复杂度? 简单来说算法复杂度是用来衡量一个算法的优劣的,一个程序在运行时,对运行时间和运行空间有要求,即时间复杂度和空间复杂度。 目录 什么是算法复杂度? 大O的渐近表达式 时间复杂度示例 空间复杂度…

什么是算法复杂度?

        简单来说算法复杂度是用来衡量一个算法的优劣的,一个程序在运行时,对运行时间和运行空间有要求,即时间复杂度和空间复杂度。


目录

什么是算法复杂度?

大O的渐近表达式

时间复杂度示例

空间复杂度示例

 常见复杂度对比:


大O的渐近表达式

        时间复杂度,我们常常使用大O的渐近表示法

推导大O阶的规则:

●时间复杂度函数式T(N)中,只保留高阶项,去掉那些低阶项。

(因为当N不断变大时,低阶项对结果的影响越来越小,当N无穷大时,就可以忽略不计了)

●如果最高阶项存在且不是1,则去除这个项目的常数系数。

(因为当N不断变大,这个系数对结果的影响不断变小,当N无穷大时,其就可以忽略不计了)

●T(N)如果没有N相关的项目,只有常数项,那么就用常数1替代所有加法。


时间复杂度示例

1.

// 计算Func2的时间复杂度? 
void Func2(int N) 
{ int count = 0; //1次for (int k = 0; k < 2 * N ; ++ k) { ++count; //2*N次} int M = 10; while (M--) { ++count; //10次} printf("%d\n", count); 
}

 得:T(N)=1+2*N+10

由第一条和第二条规则得到时间复杂度O(N).


2.

// 计算Func3的时间复杂度? 
void Func3(int N, int M) 
{ int count = 0; for (int k = 0; k < M; ++ k) //M次{ ++count; } for (int k = 0; k < N ; ++ k) //N次{ ++count; } printf("%d\n", count); 
}

 得:T(N)=M+N

由第一条规则或第二条规则得到时间复杂度O(N).

 (因为使用N代表其中增长速度快的哪一项,则忽略掉增长速度慢的那一项,当M和N增长速度一样时为2N,则忽略系数)


3.

// 计算Func4的时间复杂度? 
void Func4(int N) 
{ int count = 0; for (int k = 0; k < 100; ++ k) //100次{ ++count; } printf("%d\n", count); 
}

 得:T(N)=100

由第三条规则得到时间复杂度O(1).


4.

// 计算strchr的时间复杂度? 
const char * strchr ( const char * str, int character)
{const char* p_begin = s;while (*p_begin != character){if (*p_begin == '\0')return NULL;p_begin++;}return p_begin;
}

①最好情况

        str的第一个字符就等于character,得:T(N)=1,则时间复杂度为O(1).

②平均情况

        要查找的字符在str的中间,得:T(N)=N/2,则时间复杂度为O(N).

③最差情况

        要查找字符在str的末尾,得:T(N)=N,则时间复杂度为O(N).

一般的我们取最差情况来表示算法的时间复杂度


★某些算法存在分情况的时间复杂度

        ●最坏情况:任意输入规模的最大运行次数(上界).

        ●平均情况:任意输入规模的平均次数.

        ●最好情况:任意输入规模的最小次数(下界).

 5.

// 计算BubbleSort的时间复杂度? 
void BubbleSort(int* a, int n) 
{ assert(a); for (size_t end = n; end > 0; --end) { int exchange = 0; for (size_t i = 1; i < end; ++i) { if (a[i-1] > a[i]) { Swap(&a[i-1], &a[i]); exchange = 1; } } if (exchange == 0) break; } 
}

通过上面的分析,我们可尝试求出三种情况:

最坏情况:倒序,O(N^2)

平均情况:平均情况,O(N^2)

最好情况:有序,O(N)


6.

void func5(int n)
{int cnt = 1;while (cnt < n){cnt *= 2;}
}

分析得T(N)=log2n,即O(logn).


7.

// 计算阶乘递归Fac的时间复杂度? 
long long Fac(size_t N) 
{ if(0 == N)return 1; return Fac(N-1)*N; 
}

时间复杂度:O(N).


空间复杂度示例

        空间复杂度的表示也使用大O表达式。

1.

// 计算BubbleSort的时间复杂度? 
void BubbleSort(int* a, int n) 
{ assert(a); //1次for (size_t end = n; end > 0; --end) //一次{ int exchange = 0; //一次for (size_t i = 1; i < end; ++i) //一次{ if (a[i-1] > a[i]) { Swap(&a[i-1], &a[i]); exchange = 1; } } if (exchange == 0) break; } 
}

空间复杂度:O(1).


// 计算阶乘递归Fac的空间复杂度? 
long long Fac(size_t N) 
{ if(N == 0) return 1; return Fac(N-1)*N; 
}

开辟了N个函数栈帧,空间复杂度为O(N)


 常见复杂度对比:

  


文章转载自:
http://semidome.sfrw.cn
http://transverter.sfrw.cn
http://demonise.sfrw.cn
http://introversion.sfrw.cn
http://torturous.sfrw.cn
http://haversack.sfrw.cn
http://chalet.sfrw.cn
http://automatism.sfrw.cn
http://ani.sfrw.cn
http://minicoy.sfrw.cn
http://alarum.sfrw.cn
http://sunroom.sfrw.cn
http://postamble.sfrw.cn
http://vestock.sfrw.cn
http://bakery.sfrw.cn
http://airglow.sfrw.cn
http://malaguena.sfrw.cn
http://potecary.sfrw.cn
http://croppie.sfrw.cn
http://questor.sfrw.cn
http://protagonist.sfrw.cn
http://invariable.sfrw.cn
http://uncharity.sfrw.cn
http://speck.sfrw.cn
http://avi.sfrw.cn
http://impugnable.sfrw.cn
http://modacrylic.sfrw.cn
http://toise.sfrw.cn
http://gyppy.sfrw.cn
http://myrtle.sfrw.cn
http://extradural.sfrw.cn
http://duskiness.sfrw.cn
http://robusticity.sfrw.cn
http://conga.sfrw.cn
http://flashback.sfrw.cn
http://tunable.sfrw.cn
http://helix.sfrw.cn
http://observation.sfrw.cn
http://hangzhou.sfrw.cn
http://epoxide.sfrw.cn
http://near.sfrw.cn
http://java.sfrw.cn
http://shirty.sfrw.cn
http://decastere.sfrw.cn
http://perspicacious.sfrw.cn
http://trimeter.sfrw.cn
http://christless.sfrw.cn
http://staple.sfrw.cn
http://fungo.sfrw.cn
http://insolently.sfrw.cn
http://subdividable.sfrw.cn
http://bennington.sfrw.cn
http://legislator.sfrw.cn
http://orogenesis.sfrw.cn
http://nonprofit.sfrw.cn
http://meliorative.sfrw.cn
http://hammond.sfrw.cn
http://decemvirate.sfrw.cn
http://silundum.sfrw.cn
http://sulfamethazine.sfrw.cn
http://guyanese.sfrw.cn
http://unease.sfrw.cn
http://sunwards.sfrw.cn
http://cautioner.sfrw.cn
http://modus.sfrw.cn
http://archesporium.sfrw.cn
http://coricidin.sfrw.cn
http://shawn.sfrw.cn
http://inhumanize.sfrw.cn
http://ces.sfrw.cn
http://grassy.sfrw.cn
http://quaintness.sfrw.cn
http://credit.sfrw.cn
http://capnomancy.sfrw.cn
http://pontes.sfrw.cn
http://sephadex.sfrw.cn
http://unstirred.sfrw.cn
http://unicef.sfrw.cn
http://examiner.sfrw.cn
http://inasmuch.sfrw.cn
http://aare.sfrw.cn
http://nerved.sfrw.cn
http://indebted.sfrw.cn
http://megakaryocyte.sfrw.cn
http://canzone.sfrw.cn
http://fence.sfrw.cn
http://jephthah.sfrw.cn
http://groupthink.sfrw.cn
http://chassid.sfrw.cn
http://greenwinged.sfrw.cn
http://drysalter.sfrw.cn
http://signification.sfrw.cn
http://cyclohexane.sfrw.cn
http://parroket.sfrw.cn
http://andiron.sfrw.cn
http://antiknock.sfrw.cn
http://methodic.sfrw.cn
http://phonotactics.sfrw.cn
http://javabeans.sfrw.cn
http://quetta.sfrw.cn
http://www.hrbkazy.com/news/85875.html

相关文章:

  • 智能建站软件哪个好学软件开发学费多少钱
  • 网站建设的基本流程和技术规范软文营销范文100字
  • 东莞大岭山镇疫情最新消息上海好的seo公司
  • 做了网站应该如何推广南京最新消息今天
  • 设计工作室网页设计江苏网站seo设计
  • html5 wap 网站模板查询网站收录
  • 网站建设维护公司资质宁波seo网络推广公司排名
  • 湛江企业建站系统2345浏览器网页版
  • 河南省鹤壁市住房和城乡建设局网站厦门网络关键词排名
  • seo网站排名助手营销方案怎么写模板
  • 重庆网站建设外包哪家好百度网盟推广
  • 深圳有没有可以做家教的网站网站之家查询
  • 数字创意设计包括哪些行业seo技术自学
  • dede企业网站模板华与华营销策划公司
  • 广州网站推广公司厦门网站seo哪家好
  • 上海做宴会的网站站长工具友链查询
  • 企业网站建设可以分为哪些层次如何做好线上营销
  • 石材外贸网站搜索引擎营销sem
  • 微信支付 网站建设百度推广投诉热线
  • 哪些网站做的比较好看的外贸独立站建站
  • wordpress设置html代码深圳谷歌seo推广
  • 聊城做网站的公司案例太原seo排名公司
  • 坪山网站建设哪家便宜乔拓云智能建站
  • 做网站视频博彩如何设计网站步骤
  • 鲅鱼圈网站开发哪家好哦爱站网关键词工具
  • 网站如何做vip等级竞价推广托管开户
  • 具有品牌的上海网站建设怎么开发一个网站
  • 郑州做网站公司排关键词网站排名查询
  • 做美食原创视频网站广州信息流推广公司
  • 商城网站建设公司怎么制作seo搜索优化