离散数学-13.3-4算法的平均复杂度分析.ppt
《离散数学-13.3-4算法的平均复杂度分析.ppt》由会员分享,可在线阅读,更多相关《离散数学-13.3-4算法的平均复杂度分析.ppt(33页珍藏版)》请在三一办公上搜索。
1、1,13.3 算法的平均复杂度分析,13.3.1 排序算法快速排序算法桶排序算法 13.3.2 散列表的检索和插入 散列函数链接法开地址法(线性搜索法,双散列函数法),2,快速排序算法,算法13.6 快速排序算法Quicksort(A,p,r)1.if pr then return A2.xAr/取Ar作为轴值3.ip14.for jp to r1 do5.if Ajx then ii+1,交换Ai与Aj6.交换Ai+1与Ar/把Ap.r分成Ap.i和Ai+2.r,主元x置于Ai+17.Quicksort(A,p,i)8.Quicksort(A,i+2,r),3,计算实例,4,快速排序算法平均
2、时间复杂度分析,前提:假设输入服从均匀分布n:n个数的排列,T(n):输入为n时算法的计算时间,Tn:输入规模为n 时的平均计算时间.n,P(n)=1/n!,Tn=ET(n)=设轴值x是第i个小的数,有 T(n)=T(i1)+T(ni)+O(n).,5,快速排序算法平均时间复杂度分析(续),表示对n1中取ni的所有排列求和,6,快速排序算法平均时间复杂度分析(续),又T0=0,得 Tn=O(nlogn),7,桶排序算法,算法13.7 桶排序算法输入0,1)上的n个数Bucketsort(A)1.n|A|2.for i1 to n do3.把Ai插入表4.for i0 to n1 do5.用插入
3、排序算法对表Bi进行排序6.依次连接表B0,B1,Bn1,8,桶排序算法平均时间复杂度分析,前提:A1,A2,An相互独立且都U0,1)T(A):对输入A的计算时间,mi:桶Bi中数的个数,0in1,m0+m1+mn1=n,Tn:输入规模为n时的平均计算时间.T(A)=O(n)+Tn=ET(A)=O(n)+,9,桶排序算法平均时间复杂度分析(续),10,散列法,设关键码的全域为U,散列表T0.m1,散列函数h:U0,1,m1,h(K)称作关键码K的散列值,关键码K存放在Th(K)内发生冲突:h(K1)=h(K2)(K1K2)解决冲突的办法:链接法 开地址法,11,链接法,12,链接法(续),算
4、法13.8 链式散列表的检索和插入算法Chained Hash(K,n)1.ih(K)2.if Ti=then nn+1,Tin,转8/建一个新的链表3 iTi4.if i=N+1 then 溢出,结束/表已满,查找失败5.if DATAi=K then 输出i,结束/查找成功6.if NEXTi=NIL then nn+1,NEXTin,转8/插入K7.iNEXTi,转48.if nN then DATAnK,NEXTnNIL,13,计算实例,14,算法13.8的平均时间复杂度,简单均匀散列函数:K,h(K)服从0,1,m1上的均匀分布,且关键码的取值相互独立.插入的平均时间复杂度设DATA
5、中已有n个数据,关键码K不在DATA中.设循环次数为M,M等于比较DATAi=K的次数.令 相互独立且都服从参数1/m的0-1分布,于是 M=X1+X2+XnB(n,1/m),E(M)=n/m,15,算法13.8的平均时间复杂度(续),插入的平均时间复杂度为 Tn=O(1+),其中=n/m称作负载因子 检索的平均时间复杂度,16,开地址法,算法13.9 开地址散列表的检索和插入算法Open Adress Hash(T,K)1.for i0 to m1 do2.jh(K,i)3.if Tj=K then 输出j,结束/查找成功4.if Tj=0 then TjK,结束/插入K,设所有K05.溢出
6、./表已满,查找失败,K,产生一个搜索序列hK,0,hK,1,hK,m1,它是0,1,m1的一个排列.,17,算法13.9的平均时间复杂度,前提:假设搜索序列服从均匀分布,即K,序列hK,0,hK,1,hK,m1为0,1,m1每一个排列的可能性相等.插入的平均时间复杂度设插入K所用的循环次数为M.对i(1in),Mi 当且仅当 Th(K,0),Th(K,1),Th(K,i2)已被占用.当1in时,18,算法13.9的平均时间复杂度(续),当i n时,PMi=0.定理 设随机变量X取非负整数值且数学期望存在,则,得,19,算法13.9的平均时间复杂度(续),20,常用的开地址法,线性搜索法 搜索
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 离散数学 13.3 算法 平均 复杂度 分析

链接地址:https://www.31ppt.com/p-6595591.html