【数据结构和算法】Day 3
来源:互联网 发布:java webservice教程 编辑:程序博客网 时间:2024/04/28 17:22
算法效率的度量方法:
1)事后统计法:这种方法主要是通过设计好的测试程序和数据,利用计算机计时器对不同算法编制的程序的运行时间进行比较,从而确定算法效率的高低。
2)事前分析估算法:在计算机程序编写前,依据统计方法对算法进行估算。
影响高级语言程序运行时间的因素:
1)算法采用的策略,方案
2)编译产生的代码质量
3)问题的输入规模
4)机器执行指令的速度
由此可见,抛开与计算机软硬件有关的因素(因素2和因素4),一个程序运行时间依赖于算法的好坏和问题的输入规模(因素1和因素3)
我们研究算法的复杂度,侧重的是研究算法随着输入规模扩大增长量的一个抽象,而不是精确的定位需要执行多少次。
在分析一个算法的运行时间时,重要的是把基本操作的数量和输入模式关联起来。
函数的渐进增长:给定两个函数f(n)和g(n),如果存在一个整数N,使得对于所有的n>N,f(n)总是比g(n)大,那么我们说f(n)的增长渐进快于g(n)。
判断一个算法的效率时,函数中的常数和其他次项以及主项的系数常常可以忽略,而更应该关注主项(最高次项)的阶数。
阅读全文
0 0
- 【数据结构和算法】Day 3
- 【数据结构和算法】Day 1
- 【数据结构和算法】Day 2
- 【数据结构和算法】Day 4
- 【数据结构和算法】Day 5
- 【数据结构和算法】Day 6
- 【数据结构和算法】Day 7
- 【数据结构和算法】Day 8
- 【数据结构和算法】Day 9
- 【数据结构和算法】Day 10
- 【数据结构和算法】Day 11
- 【数据结构和算法】Day 12
- 【数据结构和算法】Day 13
- 【数据结构和算法】Day 14
- 【数据结构和算法】Day 15
- 【数据结构和算法】Day 16
- 【数据结构和算法】Day 17
- 数据结构与算法(day-3)线性表
- JavaMail发送邮件
- 2-2 阶梯电价
- MySQL: 基于 Android 远程连接
- IO流,关于File类的一些;以及输入输出流 整理
- Ubuntu16.04 下Matlab2014a安装教程
- 【数据结构和算法】Day 3
- html常用标签
- linux centos 编译Lua5.2.0 静态库 动态库
- HTTP in Flask
- 直接插入排序的最简单实现
- 在世界五百强实习,是一种怎样的体验?
- 技术的变革
- jemter使用过程中的知识总结
- 2-3 序列求和