1.2什么是好算法

在这里插入图片描述

1案例一

下图显示一个递归函数
假设内存有一块空间,这个程序可以用 ,N传进来部为0,它递归调用PrintN,传进去99999 ,调用这个函数前要把printN(100000)状态存进内存,执行完在恢复。最后存在系统里的一块内容是PrintN(1) 。
它在内存里占用的数量与 N成正比。N大的话,有限的空间爆掉就会非正常退出。
在这里插入图片描述
循环 只用了零时变量和for循环,没涉及程序调用,不管N多大战友空间都是固定,空间占用是一个常量。

2案例二


机器运算加减法比乘除法快很多,因此时间复杂度就是计算乘除 法数量。
第一个函数每一次循环进行1+i-1=i次乘法
第二个函数每次进行一次乘法
在这里插入图片描述
c1 c2 c每台电脑跑起来不一样, n 2 \mathrm{n}^{2} n2远远大于n所以第二种效率高

3 判断好算法标准

在这里插入图片描述
比较关心最坏情况复杂度。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值