时间复杂度的定义
时间复杂度通常是用来分析算法执行时间随着问题规模增大而增长的熟读。它衡量了算法的执行效率。
通常使用Big O表示法来表示时间复杂度,它描述了算法执行时间的上界。比如,一个算法的时间复杂度为O(n),表示随着问题规模n的增加,算法的执行时间线性增长。O(1)表示算法的执行时间是常数级别的,与问题的规模无关。
时间复杂度分析主要关注的是算法中占用主要时间的操作,例如循环,递归等。通过分析这些操作的执行次数,可以确定算法的时间复杂度。
时间复杂度的级别
时间复杂度有以下几个级别:常数级别,对数级别(O(log n)),线性级别(O(n)),线性对数(O(n log n))
复杂度分析
1 常数阶 只要没有循环等复杂结构,这个代码的时间复杂度都是O(1)
2 线性阶 for循环,消耗的时间是随着n的变化而变化的