扎实打牢数据结构算法根基,从此不怕算法面试系列之001 week01 02-01 什么是算法?

发布时间 2023-04-16 17:22:12作者: 皿哥的技术人生

1、什么是算法?

为了明确什么是算法,我们会从简单的查找功能开始讲起。


查找其实一个一个非常简单的算法,
但我们会为这个查找功能的算法做如下工作:

  • 让查找的功能适应更多的数据类型
  • 通过查找的例子讲解如何编写正确的程序?
  • 为查找算法性能测试
  • 对一些常见算法做复杂度分析

2、定义算法

Algorithm的本意:解决问题的方法。
实际上,是指一系列解决问题的、清晰、可执行的计算机指令。


举了例子,生活中也有算法。
问路:如何去天安门?

比如数学题:
如何求解方程式?

比如菜谱:
菜的制作过程。


3、算法的五个特性

  • 1、有限性—不代表时间一定很短;
  • 2、确定性—不会产生二义性,表示算法内部每一个指令都是清晰的。不代表输入相同,输出一定不同;
  • 3、可行性—比如拿出最大的质数,这是不可行的;
  • 4、输入;
  • 5、输出。

通常一个函数,就可以看作为一个算法,输入参数、返回值分别对应为算法的输入输出。


算法的输入是它的操作对象,输出就是它的结果,不可以简单把算法和函数等同。