这篇博客我们来讨论一下怎么来度量一个算法的效率,在讨论之前,我们先要提出一个问题,什么是算法?
答:算法是未解决某一特定类型的问题的有限运算序列,它是输入转化为输出的计算步骤
首先要明白算法的5个基本特性,算法包括5个基本特性,包括有穷性,确定性,可行性,以及输入和输出
而评价一个算法好与不好一般从四个方面来进行衡量,时间复杂度,空间复杂度以及简单性和正确性.
我们今天来讨论一下时间复杂度以及空间复杂度这两个算法的特性
时间复杂度,空间复杂度
谈到一个算法的效率,我们要从哪些地方来体现一个算法好还是不好那,自编程
发明以来,关注一个算法好与不好一般是根据这个算法的时间效率和这个算法的
空间效率来进行判断,时间效率专业点叫做时间复杂度,它衡量的是一个算
法运行的效率,即运行一遍所需要的时间,而空间效率,我们称之为空间复杂度
,它是衡量一个程序存储容量的大小
时间复杂度
算法中基本操作执行的次数,我们称之为时间复杂度
上述的基本操作很是关键
// 请计算一下Func1基本操作执行了多少次?
void Func1(int N)
{
int count = 0;
for (int i = 0; i < N ; ++ i)
{
for (int j = 0; j < N ; ++ j)
{
++count;
}
}
for (int k = 0; k < 2 * N ; ++ k)
{
++count;
}
int M &#
算法效率的度量
最新推荐文章于 2021-10-21 20:43:11 发布