算法正确性和复杂度分析

算法正确性——循环不变式

算法复杂度的计算

方法一 代换法

  —局部代换

    这里直接对n变量进行代换

    —替换成对数或者指数的情形 n = 2^m

  —整体代换 

    这里直接对递推项进行代换

    —替换成内部递推下标的形式 T(2^n) = S(n)

 

方法二 递归树法

  —用实例说明

    

    —分析每一层的内容

      —除了递归项的内容拿出来,如第一种树把T(n-kn)作为下一层进行计算

      —递归项按层写出

 

方法三 主定理

  —f(n)必须是n的多项式规模的才能使用主定理

    —

    —f(n)比较小,那么前面a,b确定的复杂度做主导

    —f(n)和a,b持平,那么是2

    —f(n)比较大,且满足后面的规则性条件,就以f(n)作为主导

添加次数较小的项

  —由于不等式方向问题,需要抵消f(n),需要添加不同次数的项

转载于:https://www.cnblogs.com/siyudemo/archive/2013/06/13/3133203.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/378269.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

第十五章 Python和Web

第十五章 Python和Web 本章讨论Python Web编程的一些方面。 三个重要的主题:屏幕抓取、CGI和mod_python。 屏幕抓取 屏幕抓取是通过程序下载网页并从中提取信息的过程。 下载数据并对其进行分析。 从Python Job Board(http://python.org/jobs&#x…

array_chunk_PHP array_chunk()函数与示例

array_chunkPHP array_chunk()函数 (PHP array_chunk() Function) array_chunk() function is an array function, it is used to split a given array in number of array (chunks of arrays). array_chunk()函数是一个数组函数,用于将给定数组拆分为多个数组(数组…

raise

raise - Change a windows position in the stacking order button .b -text "Hi there!"pack [frame .f -background blue]pack [label .f.l1 -text "This is above"]pack .b -in .fpack [label .f.l2 -text "This is below"]raise .b转载于:ht…

c语言输出最大素数,for语句计算输出10000以内最大素数怎么搞最简单??各位大神们...

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼#include #include int* pt NULL; // primes_tableint pt_size 0; // primes_table 数量大小int init_primes_table(void){FILE* pFile;pFile fopen("primes_table.bin", "rb");if (pFile NULL) {fputs(&q…

【数据结构基础笔记】【图】

代码参考《妙趣横生的算法.C语言实现》 文章目录前言1、图的概念2、图的存储形式1、邻接矩阵:2、邻接表3、代码定义邻接表3、图的创建4、深度优先搜索DFS5、广度优先搜索BFS6、实例分析前言 本章总结:图的概念、图的存储形式、邻接表定义、图的创建、图…

第十六章 测试基础

第十六章 测试基础 在编译型语言中,需要不断重复编辑、编译、运行的循环。 在Python中,不存在编译阶段,只有编辑和运行阶段。测试就是运行程序。 先测试再编码 极限编程先锋引入了“测试一点点,再编写一点点代码”的理念。 换而…

如何蹭网

引言蹭网,在普通人的眼里,是一种很高深的技术活,总觉得肯定很难,肯定很难搞。还没开始学,就已经败给了自己的心里,其实,蹭网太过于简单。我可以毫不夸张的说,只要你会windows的基本操…

android对象缓存,Android简单实现 缓存数据

前言1、每一种要缓存的数据都是有对应的versionCode,通过versionCode请求网络获取是否需要更新2、提前将要缓存的数据放入assets文件夹中,打包上线。缓存设计代码实现/*** Created by huangbo on 2017/6/19.** 主要是缓存的工具类** 缓存设计&#xff1a…

通信原理.绪论

今天刚上通信原理的第一节课,没有涉及过多的讲解,只是讲了下大概的知识框架。现记录如下: 目录1、基本概念消息、信息与信号2、通信系统模型1、信息源2、发送设备3、信道4、接收设备5、信宿6、模拟通信系统模型7、数字通信系统模型8、信源编…

Android版本演进中的兼容性问题

原文:http://android.eoe.cn/topic/summary Android 3.0 的主要变化包括: 不再使用硬件按键进行导航 (返回、菜单、搜索和主屏幕),而是采用虚拟按键 (返回,主屏幕和最近的应用)。在操作栏固定菜单。 Android 4.0 则把这些变化带到了手机平台。…

css rgba透明_rgba()函数以及CSS中的示例

css rgba透明Introduction: 介绍: Functions are used regularly while we are developing a web page or website. Therefore, to be a good developer you need to master as many functions as you can. This way your coding knowledge will increase as well …

第十七章 扩展Python

第十七章 Python什么都能做,真的是这样。这门语言功能强大,但有时候速度有点慢。 鱼和熊掌兼得 本章讨论确实需要进一步提升速度的情形。在这种情况下,最佳的解决方案可能不是完全转向C语言(或其他中低级语言)&…

android studio资源二进制,无法自动检测ADB二进制文件 – Android Studio

我尝试在Android Studio上测试我的应用程序,但我遇到了困难"waiting for AVD to come online..."我读过Android设备监视器重置adb会做到这一点,它确实……对于1次测试,当我第二天重新启动电脑时,我不仅仅是:"waiting for AVD to come online..."…

犀牛脚本:仿迅雷的增强批量下载

迅雷的批量下载满好用。但是有两点我不太中意。在这个脚本里会有所增强 1、不能设置保存的文件名。2、不能单独设置这批下载的线程限制。 使用方法 // 下载从编号001到编号020的图片,保存名为猫咪写真*.jpg 使用6个线程 jdlp http://bizhi.zhuoku.com/bizhi/200804/…

为什么使用1 * 1 的卷积核

为什么使用 1* 1卷积核? 作用: 1、实现跨通道的交互和信息整合 2、 进行卷积核通道数的降维和升维 3、 在保持feature map尺度不变的(即不损失分辨率)的前提下大幅增加非线性特性 跨通道的交互和信息整合 使用1 * 1卷积核&a…

KingPaper初探ThinkPHP3.1.2之扩展函数库和类库的使用(四)

在我们做项目的时候TP的系统函数或系统类库满足不了我们的需要 所以有些东西需要我们自己去定义,在TP中我们怎么使用自己的函数库和类库呢?在TP系统中提供了三个系统函数库 common.php是全局必须加载的基础函数库,在任何时候都可以直接调用&a…

isfinite函数_isfinite()函数以及C ++中的示例

isfinite函数C isfinite()函数 (C isfinite() function) isfinite() function is a library function of cmath header, it is used to check whether the given value is a finite value or not? It accepts a value (float, double or long double) and returns 1 if the v…

android 服务端 漏洞,安卓漏洞 CVE 2017-13287 复现详解-

2018年4月,Android安全公告公布了CVE-2017-13287漏洞。与同期披露的其他漏洞一起,同属于框架中Parcelable对象的写入(序列化)与读出(反序列化)的不一致所造成的漏洞。在刚看到谷歌对于漏洞给出的补丁时一头雾水,在这里要感谢heeeeenMS509Team…

某公司面试题

一、基础题 1,冯诺依曼结构的计算机硬件逻辑组成中,不包含以下哪个模块? A,编译器 B,控制器 C,输入设备 D,输出设备 解释:冯诺依曼由五个模块组成:输入设备 输出设备 存…

GAP(全局平均池化层)操作

转载的文章链接: 为什么使用全局平均池化层? 关于 global average pooling https://blog.csdn.net/qq_23304241/article/details/80292859 在卷积神经网络的初期,卷积层通过池化层(一般是 最大池化)后总是要一个或n个全…