算法、时间复杂度及空间复杂度概念

算法

一、概念:

是指令的集合,是为解决特定问题而规定的一系列操作。
它是明确定义的可计算过程,以一个数据集合作为输入,并产生一个数据集合作为输出。

1、一个算法通常来说具有以下五个特性:
  • 输入:一个算法应以待解决的问题的信息作为输入。
  • 输出:输入对应指令集处理后得到的信息。
  • 可行性:算法是可行的,即算法中的每一条指令都是可以实现的,均能在有限的时间内完成。
  • 有穷性:算法执行的指令个数是有限的,每个指令又是在有限时间内完成的,因此整个算法也是在有限时间内可以结束的。
  • 确定性:算法对于特定的合法输入,其对应的输出是唯一的。即当算法从一个特定输入开始,多次执行同一指令集结果总是相同的。
    简单的说,算法就是计算机解题的过程。
    在这个过程中,无论是形成解题思路还是编写程序,都是在实施某种算法。
    前者是算法的逻辑形式,后者是算法的代码形式。
2、举例:如何求0+1+2+3+…10000=?

算法1:依次相加 while do-while for
算法2:高斯解法:首尾相加*50 (1+10000)10000/2 100101/2
算法3:使用递归实现: sum(100) = sum(99)+100 sum(99)= sum(98)+99 … sum(2) = sum(1)+2 sum(1) &#

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值