- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
算法的设计(第3章蛮力法).ppt
第3章 蛮力法 3.1 字符串匹配 3.2 矩阵相乘 3.3 子集和问题 3.4 冒泡排序 3.5 若干最优化问题 蛮力法 一些问题只能采用蛮力法去求解 蛮力法设计简单,用其求解一些小问题也是可接受的 3.1 字符串匹配 输入:两个字符串T和P 输出:T中P首次出现的位置(T中不包含P则返回?1) T (Text), P (Pattern) 3.1 字符串匹配 蛮力法:从左到右扫描T,检查T中是否含有子串P m i c r o s o f w i n d o w s t s o f t 3.1 字符串匹配 蛮力法:从左到右扫描T,检查T中是否含有子串P m i c r o s o f w i n d o w s t s o f t 3.1 字符串匹配 蛮力法:从左到右扫描T,检查T中是否含有子串P m i c r o s o f w i n d o w s t s o f t 3.1 字符串匹配 蛮力法:从左到右扫描T,检查T中是否含有子串P m i c r o s o f w i n d o w s t s o f t 匹配成功,返回位置索引5 3.1 字符串匹配 [字符串匹配算法] Algorithm Brute_Match(T, P: string) begin let i = 0, n = |T|, m = |P|; while (i ≤ n?m) do let j = 0; while (j m) do if (T[i+j] ≠ P[j]) then break; j ? j + 1; if (j = m) then return i; //匹配成功 i ? i + 1; return ?1; end 时间复杂度O(m(m?n)):存在改进可能? 3.2 矩阵相乘 输入:m×n型矩阵A和n×p型矩阵B 输出:C = A×B 3.2 矩阵相乘 [矩阵相乘算法] Algorithm MatrixMultiple(A, B: int[,]) begin let (m,n) = |A|, (n,p)= |B|, C = new int[m,p]; for i = 0 to m-1 do for j = 0 to p?1 do for k = 0 to n?1 do C[i,j]) ? C[i,j] + A[i,k]*B[k,j]; return C; end 时间复杂度O(mnp):不存在改进可能 3.3 子集和问题 输入:一组n个整数的集合S,以及一个目标数z 输出:判断是否存在S的一个子集S*,其元素之和等于z 3.3 子集和问题 蛮力法:检查S的每个子集 S’,直至找到一个元素之和等于z的子集,失败则返回空集。 时间复杂度O(2n) [子集和问题的蛮力算法] Algorithm Brute_Subset(z: int; S: int[]) begin foreach S’ ? Powerset(S) do if (Sum(S’) = z) then return S; return Φ; end 3.4 冒泡排序 冒泡排序过程 令 k = 1; for i = 1 to n?k do if (A[i?1] A[i]) then A[i?1] ? A[i] 当k = n时算法结束;否则令 k = k+1, 转第2步 [排序问题] 输入:任意一个长度为n的数组A 输出:这组数的一个重排列A′ ,其满足A′[0]≤A′[1]≤…≤A′[n?1] 3.4 冒泡排序 [冒泡排序算法] Algorithm BubbleSort(A: int[]) begin let n = |A|; for k = 1 to n-1 do for i = 1 to n?k do if (A[i-1] A[i]) then (A[i-1], A[i]) ? (A[i], A[i-1]); end 时间复杂度O(n2) 3.5 若干最优化问题 最优化问题:在问题的可行域F中找到一个解x,使得某目标函数值f(x)最小或最大。 约束条件:解x应满足某项约束c(x)=true 连续优化问题:解的数量可能有无穷多 组合优化问题:解的数量有限时,总是可以用蛮力法求解,但算法效率可能很低。 3.5 若干最优化问题 最近点对问题 0-1背包问题 最优子集和问题 最大独立集和最小顶点覆盖 旅行商问题 3.5.1 最近点对问题 输入:二维平面上n个点的集合P 输出:其中距离最近的两个点 3.5.1 最近点对问题 蛮力法:计算出P中所有顶点对之间的距离,并取其中距离最小的一对顶点。 时间复杂
您可能关注的文档
最近下载
- 打印机打印空白问题解决方法.docx VIP
- 海康威视电力行业系统解决方案.docx VIP
- EPC项目采购管理方案.docx VIP
- (北师大2024版)生物八年级上册全册大单元教学设计(新教材)_可有哪些信誉好的足球投注网站.pdf VIP
- 做“自律小达人”(课件)小学生主题班会.pptx VIP
- 中小学生预防校园欺凌主题班会《拒接校园欺凌》教育宣传PPT课件.pdf VIP
- EPC项目材料设备采购计划方案.pdf VIP
- 家庭关系PPT课件.pptx
- 超星尔雅学习通《新中国史(吉林大学)》2024章节测试答案.docx VIP
- 大数据时代的财务会计在现代企业管理中的作用(企业管理资料).doc VIP
有哪些信誉好的足球投注网站
文档评论(0)