算法的五个特性:输入,输出,有穷性,确定性,可行性
算法设计的要求:正确性,可读性,健壮性,时间效率高和存储量低
算法的度量方法:事后统计方法(不科学,不准确),事前分析估算方法
算法时间复杂度:在进行算法分析时,语句总的执行次数T(n)是关羽问题规模n的函数,进而分析T(n)随n的变化情况并确定T(n)的数量级。算法的时间复杂度,也就是算法的时间度量,记作:T(n)=O(f(n))。他表示随问题规模n的增大,算法执行时间的增长率和f(n)的增长率相同,称作算法的渐进时间复杂度,简称为时间复杂度,其中f(n)是问题规模n的某个函数。
这样用大写O()来体现算法时间复杂度的记法,称之为大O记法。一般情况下,随着n的增大,T(n)增长最慢的算法为最优算法。
推导大O阶: 常见的时间复杂度算法空间复杂度:算法的空间复杂度通过计算算法所需的存储空间实现,算法空间复杂度的计算公式记作:S(n)=O(f(n)),其中,n为问题的规模,f(n)为语句关于n所占存储空间的函数。
网友评论