第1章绪论第6讲-其他情况的算法分析.pptxVIP

  • 12
  • 0
  • 约1.21千字
  • 约 14页
  • 2018-01-05 发布于湖北
  • 举报

第1章绪论第6讲-其他情况的算法分析.pptx

第1章绪论第6讲-其他情况的算法分析

1.4 其他情况的算法分析 ;;I∈Dn;   【例1-8】设计一个算法,求含n个整数元素的序列中前i(1≤i≤n)个元素的最大值。并分析算法的平均时间复杂度。;  解:i的取值范围为1~n(共n种情况),对于求前i个元素的最大值时,需要元素比较(i-1)-1+1=i-1次。在等概率情况(每种情况的概率为1/n):;1.4.2 递归算法的时空复杂度分析 ; 【例1-9】 有如下递归算法:;void fun(int a[],int n,int k) //数组a共有n个元素 { int i; if (k==n-1) for (i=0;in;i++)    //n次 printf(%d\n,a[i]); else { for (i=k;in;i++)  //n-k次 a[i]=a[i]+i*i; fun(a,n,k+1); } } ; 则 T(n) = T1(n,0) = n+T1(n,1) = n+(n-1)+T1(n,2)    = … = n+(n-1)+…+2+T1(n,n-1)  = n+(n-1)+ …+2+n    = O(n2);void fun(int a[],

文档评论(0)

1亿VIP精品文档

相关文档