一、概述
判断代码的运行效率是工程师极其重要的基本技能。
两种复杂性的概述
复杂度是判断代码运行效率的重要衡量激励。 对于计算机来说,它是通过程序一一执行估计任务的过程,即处理输入数据并获得最终结果。
编码的核心就是估算。
对于同一个估计任务网站怎么看程序运行效率,不同的估计方法获得结果的过程的复杂度是不同的。
例如:需要在在线系统中实时处理数据。 当系统平均每分钟添加300M数据,而我们的代码很难在一分钟内完成300M数据处理时,系统就会出现异常。 首先网站怎么看程序运行效率,笔记本运行速度越来越慢,直至系统蓝屏。
当出现这些问题时,我们首先要从降低代码复杂度的角度来处理。 这时候我们就需要考虑代码的时间复杂度和空间复杂度。
对于计算机程序来说,它们消耗的资源是估计过程所需的时间和空间。
事实上,很难从绝对值来判断程序的资源消耗情况,因为无论是时间还是空间,它们所消耗的资源都与输入数据量密切相关,准确的说,是密切相关的,即,对于小数据量来说,消耗的资源自然会少。
为了更客观地判断消耗程度,我们一般关注时间或空间消耗与数据量的关系。
两种复杂性的具体表现
根据复杂度的表达,复杂度可以理解为关于输入数据量n的函数。 当你的代码复杂度为f(n)时,我们可以使用小写字母O和括号来表示复杂度为O(f(n))。
例如,O(n)表示复杂度与估计实例数n线性相关;
O(logn) 意味着复杂度与估计实例的数量 n 呈对数关系。
四种复杂度估算原则
注:O(1)也代表一种特殊的复杂度,即可以用有限且可数的资源来完成一项任务。 这里有限可数的具体含义是,它与输入数据n的数量无关。