算法的英文名称是“Algorithm”,它是在制定解决任何具体问题的方法之前概述的一系列规则/指令,是解决问题的保证。比如以铁路出入口为例。
该算法应该:
定义清晰有序——算法中提供的指令应该易于理解和定义。
有一个明确的操作,就是算法的每一步都要足够简单,可能不需要进一步简化。
执行有效的可计算操作。
理解算法。
有一个传感器感知列车的到达,它的输出可能是两个结果。
火车已经到了。
火车没有到达。
第一个结果的结果将被传递给一个操作,在该操作中,建议关闭门,并将第二个结果的结果发送到初始语句进行再次测试。此外,测试作为第一个条件的结果的动作输入[(jpeg转换jpg,匿名seo blog,wWw.lwYSeo.com)],以检查火车是否已经完全离开。如果答案是肯定的,门是打开的,而如果答案是否定的,门保持关闭。
算法如何让工作变得容易?
众所周知,这是一个解决问题的计划。嗯,如果我们没有计划,我们解决复杂问题的方法可能会在第一次尝试中失败。即使问题解决了,也很难将其作为解决问题的最佳方案。
另一方面,如果我们在解决任何问题之前创建算法,那么我们创建的算法很少,并根据它们提供的最佳解决方案对它们进行分类,这可以保证解决给定的问题。这就是为什么算法总是在解决任何问题之前被创造出来。
子集/构建块和算法的工作。
多年来,事实证明,算法只能由三个构件设计:
顺序
挑选
重复
我能用算法做什么?
它是解决问题的一个函数或一系列函数。我们可以用一种算法来解决世界上最简单的问题和最棘手的问题。借助“时间复杂度”,我们认为是最好的选择。
简单来说,时间复杂度是描述任何给定算法运行时间的一种方式。有最小运行时间(称为“O”)、平均运行时间和最坏情况运行时间O(N)(也称为“O”)。
计算机科学家和软件工程师喜欢思考算法,因为他们对评估和建立最佳实践的集合感兴趣,这样他们就不必从头开始研究类似问题的每个实例。以下是解决特定问题时可能遇到的不同时间复杂性的一些示例。
这也意味着一个问题可能有很多解,但我们需要计算算法的时间复杂度来选择最佳解。面试时,系统会要求你解决问题。此外,系统还会要求你优化问题,即减少算法的运行时间。例如,您可能已经编写了带有2个“For”循环(迭代)的代码。
算法优势。
它是对任何给定问题的解决方案的逐步表示,这使得它易于理解。
它使用确定性过程。
它独立于任何编程语言,因此任何人都可以在没有编程知识的情况下轻松理解它。
每一步都有自己的逻辑顺序,所以很容易调试。
通过使用算法,问题被分解成更小的部分或步骤,因此程序员更容易将它们转换成实际的程序。
结论
因此,就像对算法及其各个方面的介绍性描述一样,我们已经看到可以使用不同的方法来解决特定的问题,而Big-O和Time复杂性是帮助我们选择最佳解决方案的参数。通过对大量算法的探索,算法分析的能力将得到根本提升,基于算法的分析应该易于设计和运行。
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/50932.html