计算机问题求解 – 论题4-11 - 串匹配 2017年5月3日.

Slides:



Advertisements
Similar presentations
平衡飲食保健強身 整理至簡體版,作者不可考。內容為 參加國際健康會議所發表的心得。. 人應該活多久 有人告訴我五六十歲就差不多了。 我在醫院工作四十年了,絕大部分病死的人是 很痛苦的。 我在美國遇見張學良,一進門見到他就大吃ㄧ驚, 他眼不花,耳不聾,很多人問他:少帥,您怎 麼能活這麼久? 他回答:不是我活的久,是他們活的太短了。
Advertisements

金融一班 王亚飞 王亚飞 王浩浩 王浩浩 吴海玥 吴海玥 我 连云港 的 家 乡 连云港 连云港,位于东经118°24′~119°48′和北纬 34°~35°07′之间,古称郁洲、海州,民国时称 连云市,建国后称新海连市,别称“港城”。东 西长129公里,南北宽约132公里,水域面积 平方公里。连云港市也是我国于1984年.
海南洋浦港区深水航道及岸滩整治工程 简 介 中交天航局洋浦工程项目经理部. 中交天津航道局有限公司 洋浦港是洋浦经济开发区的核心资源,对于开发区的腾飞起 着举足轻重的作用。 2008 年 4 月,胡锦涛总书记到洋浦经济开发区进行考察时指 出,洋浦港 “ 要积极参与中国 — 东盟自由贸易区建设和环北部湾区.
思維的疆域 (CH5~CH8) The Geography of Thought 東方人與西方人的思考方式為何不同 ? 學科所 郭靜儒 黃祈翰 社會認知與文化差異二:
《公路纵断面设计》 —— 纵断面设计的要求 道桥系 二○○七年五月. 纵断面设计的一般要求 1 .纵坡设计必须满足《公路工程技术标准》中的各项规定。 2 .为保证汽车能以一定的车速安全舒顺地行驶,纵坡应具有 — 定 的平顺性,起伏不宜过大及过于频繁。尽量避免采用极限纵坡 值.缓和坡段应自然地配合地形设置,在连续采用极限长度的.
配备计算机教室、多媒体教室、图书室、卫生室、 实验室、仪器室、音体美劳器材室、心理咨询室、少先 队活动室、教师集体备课室等专用教室。实验室、仪器 室全部按照省标准配备器材,演示实验开设率达 100% 。 学校现有图书 6050 册,生均 40 册。有一个 200 米环形跑 道的运动场地。 学校基本情况.
103 年新北市環保知識擂台賽培育計畫 新北市政府環境保護局 大 綱 計畫緣起 計畫期程及內容 計畫分工及配合事項 討論 Q&A 2.
联合国提出个口号:“千万不要死于无知” 保健的三个里程碑 平衡饮食 有氧运动 心理状态.
中正國防幹部預備學校升學生涯規劃講座 報告人: 教務處 中尉教行官 阮怡寧.
分享人: 50屆英文系會長楊嘉賢 27屆基服社社長杜義容
長得像的圖形 設計者:嘉義縣興中國小 侯雪卿老師 分享者:高雄市中山國小 江民瑜老師 高雄市勝利國小 許嘉凌老師.
如何準備社工師考試 講 師:張雅惠 社工師 演講日期:
课例评析—— 《回乡偶书》和《渔歌子》 评课人:冯琴.
就作文本身而言,题目堪称“眉目”,是作文的“眼睛”,从某种程度上说,它是作文材料和主题的浓缩或概括。
性別平等教育的課程設計與教學實踐 廖千惠.
從閱讀擺渡到寫作 高雄女中 楊子霈.
教師路,不流浪 都蘭國中 輔導活動科教師 陳曉盈.
平衡飲食保健強身.
文化创新的途径.
一、亞洲位置 北極海 北亞 歐洲 太平洋 黑海 中亞 地中海 東亞 東北亞 西亞 南亞 非洲 東南亞 印度洋 圖2-5-1亞洲分區圖.
選擇性逐字紀錄 臺北市立教育大學 張 德 銳.
2009—2010学年第一学期 小学品德与社会课程教学监控情况分析 潘诗求 2010年3月
15世纪欧洲人绘制的世界地图.
104年度獎勵私立老人福利機構及補助團體、財團法人老人福利機構提供多元及充實服務方案實施計畫 暨 104年度老人福利機構及居家服務單位優質人力獎勵計畫 申請說明會 臺北市政府社會局老人福利科
公會組織糾紛 指導老師:柯伶玫 組員 495B0065 劉致維 495B0072 廖怡塵 495B0097 范家皓.
第7课 新航路的开辟 第7课 新航路的开辟.
“淡雅浓香 中国风尚” 山东低度浓香白酒整合传播侧记
學校:臺中市立大業國民中學 領域:語文學習領域(國語文) 作者:林瑩貞
股票、债券、和保险 投资理财的话题.
第二课 战国时期的 百家争鸣 呼伦贝尔学院附属中学:司顺英.
关于职教发展的几个理念 上海市教育科学研究院 周亚弟.
企业所得税年度纳税申报表(2014年版)培训 国家税务总局所得税司 2014年12月.
电阻 新疆兵团四师76团中学.
行政作用法 行政命令.
外貌和能力哪个更重要.
从此,我不在沉默寡言 那一刻 就在这一刻 世上还有爸爸好 我 长 大 了 张绅 4 文苑芬芳
行政院人事行政總處 網際網路版人力資源管理系統 (WebHR)
从容行走,优雅为师 江苏省梁丰高级中学 任小文
運用網路資源趣味化 「每日飲食指南份量」教學
第四章 时间序列的分析 本章教学目的:①了解从数量方面研究社会经济现象发展变化过程和发展趋势是统计分析的一种重要方法;②掌握时间数列编制的基本要求;③理解和掌握水平速度两方面指标的计算及运用④理解和掌握长期趋势分析和预测的方法。 本章教学重点:现象发展的水平指标和速度指标。 本章教学难点:现象变动的趋势分析。
第七單元 大眾運輸好方便 凡事小心才安全.
觀察內容: 時間 作息 觀察內容 9:30~9:40 角落分享
1001倫理學讀書會 關於道德 報告人:謝孟釗.
能量買賣訊號 ◎波段賣訊:下列四項出現三項以上(含三項) 1、空方能量升至整波上漲之最高水準,且空方能量>多方 能量30%以上。
导入 21世纪教育网经纬社会思品工作室制作 我们可以通过哪些媒介(途径)获知这些消息?.
十二生肖的故事.
組員:蔡惠雅 494D0032 楊雅惠494B0079 蔡騏鴻 葉時宇 余建霖495B0002 陳瑛淑495B0021
標準成本制、營業績效衡量與平衡計分卡 2011/5/19.
教育人員退休新法說明會 106年12月14日 ★資料來源:參考銓敘部及高雄市教育局人事室簡報檔.
國文(一) 1.第一單元---青春印記 (學習篇、愛情篇) 2.第二單元---生活美學 3.第三單元---優遊家園.
String Matching Michael Tsai 2012/06/04.
織物的認識 演示者:陳明玲 美容科:家政概論.
校園的生命彩虹 -快樂玩出好品德 高安祺 – 高嘉屏區主任.
網路遊戲版 幸福農場168號.
学习中苦多?乐多? ——高二(1)班主题班会.
主題:需求與供給彈性 (一) 第八週 授課:黃柏凱.
浙江大学医学院公共技术平台 实验仪器预约管理系统系列培训 医学院公共技术平台 丁巧灵
第八單元 清晨摸黑騎鐵馬 反光配件要加碼.
String Matching Michael Tsai 2013/05/28.
從使徒行傳認識聖靈 吳維和 牧師 09/15/2012.
勞工保險年金制度 簡報人:吳宏翔.
第13课 东汉的兴亡.
但以理書預言講座.
法律的解釋 楊智傑.
§4 连续型随机变量.
繁星推薦系統 楊曉婷 副理 教育的服務 是我們的責任.
6.1.1 平方根.
作业反馈3-12 TC ,      Problem 26.1  26.2.
單元主題名: 大家都是好朋友 設計者:柯淑惠、林雨欣.
Presentation transcript:

计算机问题求解 – 论题4-11 - 串匹配 2017年5月3日

问题1: 什么是 string-matching problem, 直观上? 形式上?

最容易想到的算法 问题2: 为什么称它为“naïve”算法?

问题3: 为什么在最坏情况下复杂 度是平方级的?

问题4: 你能否说说naïve算法 有什么问题,为什么有 可能改进?

最容易想到的算法 逐位单字符比较

问题5: Rabin-Karp算法的基本 思想是什么?

Preprocessing 问题6: Rabin-Karp算法是采用“预处理” 方式的算法?何为“预处理”,这 个算法预处理的结果是什么?

问题7: Matching Rabin-Karp算法在“匹配”时拿 什么与什么匹配? 这样有什么问题?是如何解决的? 什么意思? 值匹配仅仅是必要条件! 如果值不匹配,一定不是match 但如果值相同,可能不是valid 什么意思?

问题8: 对T中每个长度为m的子串在匹配前 都必须计算它的“值”,这个计算 是如何被“简化”的? 递推的方法

问题9: 影响复杂度的 关键是什么?

问题10: 这是书上开始介绍Rabin-Karp 算法时的第一段话,现在你能 解释一下了吗? Valid hits is few! Spurious hits: Assumption : Reducing valued modulo q acts like a random mapping from Σ^∗ 𝑡𝑜 ℤ_𝑞 Then the number of spurious hits is 𝑂(𝑛/𝑞) 𝑂(𝑛)+𝑂(𝑚(𝑣+𝑛/𝑞))

有限状态机 语句::=前缀 a 前缀::= 前缀::=前缀b | 前缀aa

问题11: 你能将有限自动机与字符 串的识别联系起来吗? 欲匹配的pattern一定是可接受的“语句”的后缀! Whenever its current state q is a member of A, the machine M has accepted the string read so far. An input that is not accepted is rejected. 问题11: 你能将有限自动机与字符 串的识别联系起来吗? 欲匹配的pattern一定是可接受的“语句”的后缀! 有多少个有效偏移出现,就有多少个“可接受”的语句。(当然,这些语句都是输入的T的某个“前缀”)

问题12: 你能否看出构建自 动机的关键在哪里? 待匹配的pattern 终态函数:每个状态下,需要计算出下一个输入导致的格局,拥有多长的pk,如果k=m,匹配成功。

问题13: 这个函数的 “价值”在 何处? 告诉我们“退”到那里。 X的最后一位向前数,有多少位形成的子串(后缀)是模式P的前缀。   问题13: 这个函数的 “价值”在 何处? X的最后一位向前数,有多少位形成的子串(后缀)是模式P的前缀。 如果这个数字是k,意味著:如果x后面出现的m-k位恰好是模式P的后几位,匹配成功 西格玛(x)=m表明什么? 告诉我们“退”到那里。

如何构建自动机 后缀函数的意义不仅仅是告诉我们“退到哪里”!

最终目的 问题14: (Pqa)究竟怎么确定?

后缀函数递归引理 问题15: 你能解释右边的图吗? 定义西格玛(Pqa)可以通过计算西格玛(xa) 确定(Pqa)与x无关,即与T无关。

问题16: 能不能不计算转换函数? 可能需要代价m 考察所有可能的状态q,看在任意输入下a下,德尔塔(q,a)是什么?转到哪个状态去 K是某个状态,如果a是模式P的下一位,k在q的基础上增加1,否则要回退,直到找到模式P的最大前缀。 不计算转移函数意味着:没有返回的边 问题16: 能不能不计算转换函数?

KMP算法的基本思想 很显然,在我们只比较了5个字符,掌握了这些信息的基础上: 偏移量s+1是必定是无效的!Why? 没有返回边,无法进行匹配。是否可以实时计算该返回到哪里? 如果能够实时计算,比如KMP采用π数组存储每个q的有关信息,计算π只需m量级。而计算德尔塔函数却需要m西格玛量级。 很显然,在我们只比较了5个字符,掌握了这些信息的基础上: 偏移量s+1是必定是无效的!Why? 我们有没有办法确定哪个s’偏移量可能是有效偏移?

为什么要问这个问题? 找到那个计算最小的s’的线索 我们真正找的是P[1..k]在文本P[1..q]中的线索 s’ = s+(q-k) Max k => min s’ 找到那个计算最小的s’的线索 我们真正找的是P[1..k]在文本P[1..q]中的线索 s’ = s+(q-k)

模式的前缀函数        

KMP算法 第8行特别有意思:不再寻找新的s’了,直接比较P[q+1]和T[i]

KMP VS 有限状态机

  与KMP算法极为相似! 一个是在T中找P,一个是P同自身比较 一个利用\pi,一个计算\pi

问题: 串匹配是否一定要查看T 中每一个字符?

Open Topics: Correctness of the prefix-function computation Correctness of the KMP algorithm

课外作业 TC Ex.32.1-: 2, 3, 4 TC Ex.32.2-: 1, 2, 3, 4 TC Ex.32.3-: 2, 3, 5