2010-2011-2《算法分析》-5变治法.pptVIP

  1. 1、本文档共58页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
变治法 基本思想 变换! (1)把问题的实例变得更容易求解。 (2)对实例进行求解。 主要类型: (1)实例简化 (2)改变表现 (3)问题转化 预排序 在问题求解之前,先进行排序,然后在求解问题。 例1 检验数组中元素的唯一性 (1)蛮力法 ,扫描统计,O(n2) (2)先排序,再扫描统计,O(nlogn) 预排序 例2 模式统计 在一个给定的序列中找到出现次数最多的一个模式。 比如:英文单词 (1)蛮力法 ,扫描统计,O(n2) (2)先排序,再扫描统计,O(nlogn) 预排序 例3 查找问题: 在一个数组中是否存在某个给定的数。 (1)蛮力法,O(n) (2)先排序,后查找, 排序:O(nlogn),查找:O(log2n) 合计:O(nlogn) 高斯消去法 二元联立方程: a11x+a12y=b1 a21x+a22y=b2 a11x+a12y=b1 (a21x+a22y)*(a11/a21)=b2*(a11/a21) a11x+a12y=b1 a11x +(a22 * a11/a21) y=b2*(a11/a21) 高斯消去法 一般的n个方程的n元联立方程组: a11x1+ a12x2 + … + a1nxn = b1 a21x1+ a22x2 + … + a2nxn = b2 …… an1x1+ an2x2 + … + annxn = bn 高斯消去法 a’11x1+ a’12x2 + … + a’1nxn = b’1 a’22x2 + … + a’2nxn = b’2 …… a’nnxn = b’n 高斯消去法 初等变换: (1)交换方程组中两个方程的位置 (2)把一个方程替换为它的非零倍。 (3)把一个方程替换为它和另一个方程倍 数之间的和或差。 举例:p156 高斯消去法 GaussElimination(A[1…n,1…n],b[1…n]) { for j=1 to n A[j,n+1]=b[j] for i=1 to n-1 for j=i+1 to n for k=i to n+1 A[j,k]=A[j,k]-A[I,k]*A[j,i]/A[i, I] } 高斯消去法 上面代码的问题: (1) 可能有系数是0 (2)最内的循环存在重复计算现象,效率低。 (3)误差累计,有除法,计算机只能表示小数点后面的有限位数 BetterGaussElimination(A[1…n,1…n],b[1..n]) { for i=1 to n A[i,n+1]=b[i] for i=1 to n-1 pivotrow=i for j=i+1 to n if |A[j,i]||A[pivotrow,i]| pivotrow=j for k=i to n+1 swap(A[i,k],A[pivotrow,k]) for j=i+1 to n temp=A[i,k]/A[i,i] for k=i to n+1 A[j,k]=A[j,k]-A[i,k]*temp } 高斯消去法 时间复杂度:O(n3) 其他应用: (1)LU分解 (2)计算矩阵的逆 (3)计算矩阵的行列式 平衡查找树 AV L树: G.M.Adelson-Velsky 和E.M.Landis 定义:一棵AVL树是一棵二叉查找树,其中每个节点的平衡因子定义为该节点左子树和右子树的高度差,这个平衡因子要么是0,要么是+1,或者-1 P163 AV L树的调整 (1)右单转 (2)左单转 (3)左右双转 (4)右左双转 P164 排序 分析排序! 排序的时间复杂度分析 排序的最好复杂度为什么是:O(n log n)? 有3个互不相等元素组成的序列: k1,k2,k3 对此3个元素进行排序,唯一的方法是两两进行比较。 比较的结果两种:大于,小于。 排序的时间复杂度分析 排序的时间复杂度分析 因为k1,k2,k3互不相等,它们之间只可能有下列6种关系:①k1k2k3;②k1 k3 k2;③k3k1k2;④k2k1k

文档评论(0)

jdy261842 + 关注
实名认证
文档贡献者

分享好文档!

1亿VIP精品文档

相关文档