算法是程序的灵魂,现在火热的人工智能,算法也是核心,所以你知道算法的重要性了吧
程序=数据结构+算法+某种编程语言
算法是一组可行的,确定的和有穷的规则,是解决问题的一个抽象的步骤
算法具备5个特征:
1,有穷性
算法的执行次数是有限的
执行时间也是有限的
2,确切性
算法的每一步执行做什么事是明确的
3,输入
所谓的输入,就是要做的事情,比如计算1-100数字之和,1-100就是输入
4,输出
算法应该有明确的输出,注意并非是说每次的输出结果都是一致的。
比如计算1-100数字之和,那这个属于确定性算法,每次的结果是一致的
而如果是非确定性算法,则每次结果不一定一样
5,可行性
算法的每个步骤必须是切实可行的,且可以在有限时间完成
提个思考题:算法和数据结构的关系是怎么样的?
答案:数据结构是算法实现的基础
数据结构用来表示被处理的对象
算法用来表示处理的核心方法
编程语言就是我们用来描述算法的一种方式