文档详情

第三讲 算法的复杂度分析与最优算法.pdf

发布:2017-09-26约1.06万字共25页下载文档
文本预览下载声明
Introduction to Algorithms 算法导论 李彬 山东轻工业学院 理学院 第一章 引论 算法的复杂度分析与最优算法 2 增长阶 例: sum=0; for(i=1;i=n;i++) for(j=1;j=n;j++) sum++; 3 增长阶 2 T(n)=O(n ) 4 算法分析的基本法则 非递归算法: (1)for / while 循环 循环体内计算时间*循环次数; (2)嵌套循环 循环体内计算时间*所有循环次数; (3)顺序语句 各语句计算时间相加; (4 )if-else语句 if语句计算时间和else语句计算时间的较大者。 5 templateclass Type void insertion_sort(Type *a, int n) { Type key; // cost times for (int i = 1; i n; i++){ // c1 n key=a[i]; // c2 n-1 int j=i-1; // c3 n-1 while( j=0 a[j]key ){ // c4 sum of ti a[j+1]=a[j]; // c5 sum of (ti-1) j--; // c6 sum og (ti-1) } a[j+1]=key; // c7 n-1 } } 6 n−1 n−1 n−1 T(n) c n +c (n −1) +c (n −1) +c t +c (t −1) +c (t −1) +c (n −1)
显示全部
相似文档