赞
踩
1 时间复杂度
2 空间复杂度
渐进
时间复杂度渐进时间复杂度
一般使用O表示时间复杂度,O(1)、O(n)、O(n^2)、O(n^3)、O(log2n)
时间复杂度,一般采用大O表示,评估算法的一种方式 O(1):不是代表只有一行代码,只是说没有遍历去影响他,他的时间复杂度是常量级的 public void sum1(){ sout("和="+sum); } public void sum1(){ sout("和="+sum); sout("和="+sum); sout("和="+sum); sout("和="+sum); } public void sum1(){ sout("和="+sum); sout("和="+sum); //.....100行代码 sout("和="+sum); sout("和="+sum); } O(n):单层for循环,算法的时间复杂度只跟n的大小有关 O(n^2):嵌套for循环 public void sum1(int[] array){ for(int i=0;i<array.length;i++){ for(int j=0;j<array.length;j++){ sum = array[i] * array[j]; } } }
最好时间复杂度
最坏时间复杂度:通常使用最坏时间复杂度去表示一个算法的复杂度
平均/均摊时间复杂度
复杂度震荡:代码有问题
空间复杂度
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。