算法第一天(补)

编程(内涵):指令的集合,指令要准确,不能含有歧义。(code to learn比learn to code好,在编程中学习)

数据结构:带有结构特性的数据元素集合,(数据的组成和操作)

算法(algorithm)

概念解决问题的方法。  例:1-100累加法和高斯方法的差别。

五大特征:

1. 有穷性 Finiteness) :算法必须能在执行有限个步骤之后终止;

2.确切性Definiteness):算法的每一步骤必须有确切的定义,无歧义;

3.0个或多个输入Input):描述运算对象的初始情况,0个输入是指算发已经限定了初始条件;

4.一个或多个输出Output):加工数据就是期望得到结果,没有输出的算法是毫无意义的;

5.可行性Effectiveness:算法中执行的任何计算步骤都是可以被分解为基本的可执行的操作步骤,即每个计算机步骤都可以在有限时间内完成

三种描述

1.流程图(五框一线)

2.N-S流程图(盒图)

3.伪代码(更符合代码编写的思路)

算法的时空复杂度

描述:

1.程序运行时间=所有语句运行时间之和;

2. 数据规模不一样、CPU运行效率也不一样;

3.用核心语句的执行次数来近似估计,核心语句要执行的次数与算法、输入的数据规模有关;

推导示例:

(图片来自转载)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值