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

响应式企业展示型网站百度推广开户多少钱一个月

响应式企业展示型网站,百度推广开户多少钱一个月,wordpress排名,正邦设计董事长空间复杂度 空间复杂度主要是衡量一个算法运行所需要的额外空间,在计算机发展早期,计算机的储存容量很小,所以空间复杂度是很重要的。但是经过计算机行业的迅速发展,计算机的容量已经不再是问题了,所以如今已经不再需…

空间复杂度

空间复杂度主要是衡量一个算法运行所需要的额外空间,在计算机发展早期,计算机的储存容量很小,所以空间复杂度是很重要的。但是经过计算机行业的迅速发展,计算机的容量已经不再是问题了,所以如今已经不再需要特别关注一个算法的空间复杂度。

空间复杂度也是一个数学表达式,是对一个算法的运行过程中临时占用储存空间大小的量度。

空间复杂度不是程序占用了多少bytes的空间,而是变量个数。空间复杂度计算也是使用大O渐进表示法。

函数运行时所需要的栈空间(存储参数、局部变量、一些寄存器信息等)在编译期间已经确定好了,因此空间复杂度主要通过函数在运行时候显式申请的额外空间来确定。

例1:

void Bubblesort(int* a, int sz)
{for(int i = 0; i < sz-1; i++){int exchange = 0;for(int j = 0; j < sz-1-i; j++){if(a[j] > a[j+1]){int tmp = a[j];a[j] = a[j+1];a[j+1] = tmp;exchange = 1;}}if(exchange == 0)break;}
}

冒泡排序,只使用了常数个空间,所以空间复杂度为 O(1);

例2:

int* Fib(int n)
{if(n == 0)return NULL;int* fibarr = (int*)malloc(sizeof(int)*(n+1));fibarr[0] = 0;fibarr[1] = 1;for(int i = 2; i <= n; i++){fibarr[i] = fibarr[i-1] + fibarr[i-2];}return fibarr;
}

fibarr开辟了N个int类型的空间,所以空间复杂度为O(N)

例3:

int fac(int n)
{if(n == 0)return 1;return fac(n-1)*n;
}

再fac函数中调用了N次fac函数,递归了N次,开辟了N个栈帧,每个栈使用了常数个空间,所以空间复杂度O(N)

例4:

请回答fib函数的空间复杂度是多少?

int fib(int n)
{if(n < 3)return 1;return fib(n-1) + fib(n-2);
}

                        A. O(1)        B.O(N)        C.O(N^2)        D.O(2^N)

                                                           .

                                                           .

                                                           .

                                                           .                                                           

                                                           .

                                                           .

                                                           .

                                                           .

                                                           .

                                                           .

                                                           .

                                                           .

                                                           .

                                                           .

答案:O(N)

对于 fib(n),递归调用的最大深度取决于 n,因为每次递归都会对 n−1或 n−2进行调用。

尽管函数中有很多重复计算(导致时间复杂度是指数级的),但调用栈的最大深度只与输入 n 的大小成线性关系。

比如调用 fib(n),最深的递归路径是 fib(n) → fib(n-1) → fib(n-2) → ... → fib(1)

每次递归调用都需要在栈上分配空间。最大栈深度是递归树的高度。在这种实现方式下,递归树的高度为 O(n)。

http://www.tj-hxxt.cn/news/72021.html

相关文章:

  • 一个com的网站多少钱湖北短视频搜索seo
  • 遵化市有做奇麟网站的吗如何在百度发视频推广
  • 手机网站营销页九江seo优化
  • 家居网站建设怎么免费建公司网站
  • 北京网页制作模板搜索广告优化
  • 贵州做网站公司百度在线入口
  • 请人做网站 出现纠纷怎么办网站之家查询
  • 工业品一站式采购平台网站策划是做什么的
  • 天津定制网站建设公司站长工具综合查询ip
  • 做网站过时了seo 网站排名
  • 网站域名注册哪家好点击器 百度网盘
  • python 网站建设网页设计图片
  • 做赌博网站庄家百度快照什么意思
  • 好的建筑设计网站推荐即刻搜索
  • 网站建设那个网站好西安网络推广外包公司
  • 100tab武汉网站建设googleplay安卓版下载
  • 企业信息管理系统免费绍兴seo外包
  • 政府网站红色模板网站推广的概念
  • 威海网站优化公司百度广告优化
  • dnf免做卡网站啥是网络推广
  • 深一网站建设建网站找哪个平台好呢
  • dede手机wap网站模板东莞头条最新新闻
  • 西安网站seo服务外链网站大全
  • 卡片式主题wordpress排名seo公司
  • 做网站需要什么证明嘛厦门站长优化工具
  • 网站开发设计框图网络营销与网站推广的区别
  • 旅游网站建设分析 需求提高网站搜索排名
  • 电子商务网站建设模式长春seo
  • 做网站用什么字体比较好南京百度推广优化排名
  • 企业网站建设套餐价格建网站找哪个公司