评判算法效率的标准

本文探讨了评判算法效率的两个主要标准:时间复杂度和空间复杂度。时间复杂度关注算法执行的基本操作次数与问题规模的关系,而空间复杂度则涉及算法运行所需的额外空间与问题规模的联系。通过移除常数、系数并取最高项来简化表达,作者列举了不同复杂度级别,如O(1), O(n), O(n^2)和O(log n)等,以帮助理解这些概念。" 104256089,8537462,C语言指针详解:从定义到*和&的奥秘,"['C语言指针', '数据结构', '编程基础']
摘要由CSDN通过智能技术生成

算法效率评判标准

时间复杂度
空间复杂度

空间复杂度

算法执行过程中所需要的额外空间与问题规模n之间的函数关系
malloc–>n
递归–>n

时间复杂度

算法中最基本的操作执行的次数与问题规模n之间的关系
运行算法所消耗的工作量与问题规模之间的函数关系,选
择一个对于所研究问题的最基本的原操作,然后去计算该
操作重复执行的次数(与问题规模相关)

时间复杂度遵循的原则

1、去掉常数
2、去掉系数
3、取最高项

举例说明:

O(1)
void fun()
{
  printf("hello world\n");
}
O(n)
void fun(int n)
{
 for(int i=0;i<n:++i)
     {
       ….
     }
}
O(n)
void fun(int n)
{
 for(int i=0;i<n:++i)
     {
       ….
     }
for(int i=0;i<n:++i)
     {
       ….
     }
}
O(n)
void fun(int n)
{
 for(int i=0;i<n:i
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值