当我们谈论计算机编程中的算法时,我们已经有了输入并且知道了预期的输出。所以,所谓算法就是根据所有已定义的输入步骤,到获得所需输出的过程。
所以,整个算法包含三个主要部分,输入,输出,中间算法逻辑步骤:
输入:表示我们已经知道的或我们必须开始的事情。
算法:表示我们需要一个一个地遵循的一组顺序步骤。
输出:表示我们最终需要达到的预期结果。
除了数学或计算机编程之外,我们在日常生活中经常可以看到算法,算法无处不在,它可以高大上,也可以很平凡哦!
譬如你想煮一道菜。你可以从一些配料(也就是输入)开始,然后按照食谱进行操作。
食谱具有不同的步骤(也就是算法),你可以按照这些步骤来制作菜肴(也就是输出)。
在我们学习算法的时候,知道它们可以以不同的形式分类是很重要的事情。接下来,让我们看看算法是如何分类的?
1、蛮力算法:这是我们通过探索所有可能的场景来设计解决方案的最常见类型。像蛮力破解密码工具,一个一个地猜密码,直至猜中为止!
2,贪心算法:在很多选择的情况下,我们需要考虑局部最佳选项来做出决定,并将其假设为全局最优解。
3,分治算法:这种算法就是将主要问题划分为子问题,然后单独解决它们。
4,回溯算法:这是蛮力算法的一种修改形式,我们回溯到先前的决定以获得所需的目标。
4,随机算法:顾名思义,在这个算法中,我们进行随机选择或选择随机生成的数字。
5,动态规划算法:这是一种高级算法,我们可以记住过去所做的选择并将其应用到未来的场景中。
6,递归算法:这种算法遵循一个循环,在这个循环中,我们遵循可能出现的情况的模式来获得解决方案。
如上所述,从计算机编程到科学实验,算法在多个领域都占有重要地位。
无论您使用哪种编程语言,解决问题的第一件事就是提出算法。即使是最复杂的问题也可以通过分析算法流程图来解决。
假设我们必须编写一个程序来自动打印从 1 到 20 的数字。为此,我们初始化一个变量并在每个循环中执行 1 的增量。循环将重复,直到数量达到 20。
以此类推,我们可以计算阶乘 N 的结果。
就像编程一样,算法也可以用于解决数学或科学问题。从打印斐波那契数列到计算一个数字的阶乘,您可以为任何数学问题想出一个算法。
譬如,我们有一种将华氏温度转换为摄氏温度的算法。首先,我们从用户那里获取输入,应用华氏到摄氏公式,然后显示结果。判断并输出数字 N 是偶数还是奇数。
除了编程或科学问题,算法几乎可以用来解决所有问题。您可以使用算法来推导出食谱、计算税收或任何其他问题。
好了,这里我先给大家入个门,接下来,我们将逐个讲解如何应用诸多的算法!
关注我,别走开哦!精彩下期呈现……
网友评论