- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
 - 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
 - 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
 
                        查看更多
                        
                    
                变治法 基本思想 变换! (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)