算法分析的框架

来源:互联网 发布:淘宝评价被系统删除 编辑:程序博客网 时间:2024/05/19 16:06

   对于一个算法,应该知道如何去衡量的时间效率以及空间效率。但是,现在多研究对时间效率的衡量,空间效率在硬件的快速发展下已经不是那么重要了。那如何度量时间效率呢,就是基本操作的次数。所谓基本操作的次数,举个例子来说,在一维数组里面求最大值:

  

public class ArrayTester2 {/*** @param args*/public static void main(String[] args) {   int[] array = { 10, 20, 30, 40, 50, 60 };   int max = array[0];   for (int i = 1; i < array.length; i++) {    if (array[i] > max) {     max = array[i];    }      }   System.out.printf(max);}}
  在上面的这个例子中基本操作次数就是if语句的比较:array[i] > max,因为每次循环都会执行这个操作,而max=array[i],是在if语句成立的条件下才执行的。可以总结为一个规律,那就是基本操作次数是算法最内存循环中最费时的操作。

原创粉丝点击