算法的时间复杂度是衡量算法效率的重要指标。了解算法的时间复杂度有助于我们更好地选择合适的算法来解决实际问题。
时间复杂度的定义
时间复杂度是指算法执行时间与输入数据规模之间的关系。通常用大O符号表示,如O(n)、O(n^2)等。
常见时间复杂度
- O(1):常数时间复杂度,算法执行时间不随输入数据规模变化。
- O(n):线性时间复杂度,算法执行时间与输入数据规模成正比。
- O(n^2):平方时间复杂度,算法执行时间与输入数据规模的平方成正比。
- O(logn):对数时间复杂度,算法执行时间与输入数据规模的以2为底的对数成正比。
代码示例
以下是一个简单的线性时间复杂度示例:
def linear_search(arr, x):
for i in range(len(arr)):
if arr[i] == x:
return i
return -1
扩展阅读
想了解更多关于算法时间复杂度的知识?请访问我们的算法基础教程。