时间复杂度
算法的时间复杂度是一个函数,算法的时间复杂度算的不是时间,算的是程序执行的大概次数。
大O的渐进表示法
请计算一下Func1基本操作执行了多少次?
Func1执行的基本操作次数:F(N)=N2+2*N+10;
N=10 F(N)=130;
N=100 F(N)=10210;
N=1000 F(N)=1002010;
随着N的增大,对F(N)的值影响最大的N2,即阶数最高的那项对结果的影响最大。
则时间复杂度为O(N2),即取阶数最高的那项。如果N2前面有系数,则系数也去掉,如F(N)=2N2+2*N+10,则时间复杂度为O(N2)。
大O符号(Big O notation ):是用于描述函数渐进行为的数学符号。