算法(蓝桥杯)

目录

计算复杂度 

算法的评估 

复杂度分类

​编辑易解问题一一难解问题:用多项式时间来区分

多项式函数与指数函数的增长对比 

​编辑 问题规模和可用算法​编辑

例题:求和

1.暴力法:时间复杂度O(​编辑)

2.算法:前缀和

计算资源

竞赛的时间限制和空间限制

 运行时间


算法(Algorithm):对特定问题求解步骤的一种描述,是指令的有限序列。有5个特征:

  • (1)输入:一个算法有零个或多个输入。
  • (2)输出:一个算法有一个或多个输出。
  • (3)有穷性:一个算法必须在执行有穷步之后结束,且每一步都在有穷时间内完成
  • (4)确定性:算法中的每一条指令必须有确切的含义,对于相同的输入只能得到相同的输出。
  • (5)可行性:算法描述的操作可以通过已经实现的基本操作执行有限次来实现。

计算复杂度 

  • 把n称为问题的数据规模,把程序的复杂度记为O(n)。
  • 复杂度只是一个估计,不需要精确计算。
  • 例如在一个有n个数的无序数列中,查找某个数a,可能第一个数就是a,也可能最后一个数才是a。平均查找时间是n/2次,但是仍然把查找的时间复杂度记为O(n)。
  • 在算法分析中,规模n前面的系数被认为是不重要的。 

算法的评估 

  • O(1)计算时间是一个常数,和问题的规n无关。用公式计算时,一次计算的复杂度就是O(1),例如hash算法。在矩阵A[M][N]中查找i行j列的元素,只需要一
  • 4
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小叶pyか

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值