东南大学:《数据结构》课程教学资源(PPT课件讲稿)随机算法(主讲:方效林)

随机算法 东南大学计算机学院方效林
东南大学计算机学院 方效林 随机算法

本章内容 随机算法的基本概念 随机采样问题 第k小元素问题的随机算法 Sherwood随机化方法 判断字符串是否相等问题 子串匹配问题 求最近点对的随机算法 素数测试
本章内容 ◼ 随机算法的基本概念 ◼ 随机采样问题 ◼ 第k小元素问题的随机算法 ◼ Sherwood随机化方法 ◼ 判断字符串是否相等问题 ◼ 子串匹配问题 ◼ 求最近点对的随机算法 ◼ 素数测试 2

随机算法的基本概念 例子 o判断函数f(x1,x2X)在区域D中是否恒为0, 2 f很复杂,不能数学化简,如何判断就很麻烦 o若随机产生一个n维坐标(r2)D,代入 得f(r,2rn)≠0,则可判定区域D内f不恒为0 o若对很多个随机产生的坐标进行测试,结果次 次均为0,则可说f0的概率是非常小 有不少问题,目前只有效率很差的确定性求解 算法,但用随机算法去求解,可以很快地获 得相当可信的结果 3
随机算法的基本概念 ◼ 例子 判断函数 f(x1 ,x2 ,…xn )在区域 D中是否恒为0, f 很复杂,不能数学化简,如何判断就很麻烦 若随机产生一个n维坐标(r1 ,r2 ,… rn )D,代入 得f(r1 ,r2 ,… rn )≠0,则可判定区域D内f不恒为0 若对很多个随机产生的坐标进行测试,结果次 次均为0,则可说f≠0的概率是非常小 ◼ 有不少问题,目前只有效率很差的确定性求解 算法, 但用随机算法去求解,可以很快地获 得相当可信的结果 3

随机算法的基本概念 随机算法 o随机算法是一种使用概率和统计方法在其执行过程 中对于下一计算步骤作出随机选择的算法 ■随机算法的优越性 o对于有些问题:算法简单 对于有些问题:时间复杂性低 o对于有些问题:同时兼有简单和时间复杂性低
随机算法的基本概念 ◼ 随机算法 随机算法是一种使用概率和统计方法在其执行过程 中对于下一计算步骤作出随机选择的算法 ◼ 随机算法的优越性 对于有些问题:算法简单 对于有些问题:时间复杂性低 对于有些问题:同时兼有简单和时间复杂性低 4

随机算法的基本概念 ■随机算法分类 o随机数值算法 Monte Carlo算法 Las Vegas算法 Sherwood算法 随机数值算法 o主要用于数值问题求解 o算法的输出往往是近似解 o近似解的精确度与算法执行时间成正比
随机算法的基本概念 ◼ 随机算法分类 随机数值算法 Monte Carlo算法 Las Vegas算法 Sherwood算法 ◼ 随机数值算法 主要用于数值问题求解 算法的输出往往是近似解 近似解的精确度与算法执行时间成正比 5

随机算法的基本概念 ■随机算法分类 o随机数值算法 Monte Carlo算法 Las Vegas算法 Sherwood算法 Monte Carlo算法 主要用于求解需要准确解的问题 算法可能给出错误解 o获得精确解概率与算法执行时间成正比
随机算法的基本概念 ◼ 随机算法分类 随机数值算法 Monte Carlo算法 Las Vegas算法 Sherwood算法 ◼ Monte Carlo算法 主要用于求解需要准确解的问题 算法可能给出错误解 获得精确解概率与算法执行时间成正比 6

随机算法的基本概念 随机算法分类 o随机数值算法 Monte Carlo算法 Las Vegas算法 Sherwood算法 Las Vegas算法 旦找到一个解,该解一定是正确的 o找到解的概率与算法执行时间成正比 o增加对问题反复求解次数,可是求解无效的概率任 意小
随机算法的基本概念 ◼ 随机算法分类 随机数值算法 Monte Carlo算法 Las Vegas算法 Sherwood算法 ◼ Las Vegas算法 一旦找到一个解, 该解一定是正确的 找到解的概率与算法执行时间成正比 增加对问题反复求解次数, 可是求解无效的概率任 意小 7

随机算法的基本概念 ■随机算法分类 o随机数值算法 Monte Carlo算法 Las Vegas算法 Sherwood算法 Sherwood算法 一定能够求得一个正确解 o确定算法的最坏与平均复杂性差别大时,加入随机 性,即得到 Sherwood算法 o消除最坏行为与特定实例的联系
随机算法的基本概念 ◼ 随机算法分类 随机数值算法 Monte Carlo算法 Las Vegas算法 Sherwood算法 ◼ Sherwood算法 一定能够求得一个正确解 确定算法的最坏与平均复杂性差别大时, 加入随机 性, 即得到Sherwood算法 消除最坏行为与特定实例的联系 8

随机算法的基本概念 随机算法分析的目标 o平均时间复杂性:时间复杂性随机变量的均值 o获得正确解的概率 获得优化解的概率 解的精确度估计
随机算法的基本概念 ◼ 随机算法分析的目标 平均时间复杂性:时间复杂性随机变量的均值 获得正确解的概率 获得优化解的概率 解的精确度估计 9

随机数值算法 计算值 o设有一个半径为r的圆及其外切四边形 o向正方形随机地投掷n个点,设k个点落入圆内 o投掷点落入圆内的概率为(r2)(4r2)=/4. o用k/n逼近4,即kn4,于是(4k)/n 10
随机数值算法 ◼ 计算值 设有一个半径为 r 的圆及其外切四边形 向正方形随机地投掷n个点, 设k个点落入圆内 投掷点落入圆内的概率为 (r 2 )/(4r2 )= /4. 用k/n逼近/4, 即k/n/4, 于是 (4k)/n. 10 r
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 动态内存分配器的实现(实验PPT讲稿).pptx
- Java面向对象程序设计:Java的接口(PPT讲稿).pptx
- 赣南师范大学:《计算机网络技术》课程教学资源(PPT课件讲稿)第十章 Internet概述.ppt
- 《编译原理》课程教学资源(PPT课件讲稿)第四章 语法分析——自上而下分析.ppt
- 《网络搜索和挖掘技术》课程教学资源(PPT讲稿)Lecture 1:Web Search Overview & Web Crawling.ppt
- 《程序设计语言》课程PPT教学课件(章节大纲).ppt
- 长春大学旅游学院:《计算机网络与网络安全》课程教学资源(PPT课件)第6章 计算机网络与网络安全.ppt
- JavaScript编程基础(JavaScript语法规则).ppt
- 《面向对象程序设计》课程PPT教学课件:第1章 Visual Basic概述(主讲:高慧).ppt
- 西安电子科技大学:Operating-System Structures(PPT讲稿).pptx
- 电子科技大学计算机学院:《现代密码学》课程PPT教学课件(密码学基础)第一章 引言.ppt
- 山东大学:《微机原理及单片机接口技术》课程教学资源(PPT课件讲稿)第九章 模数转换器与数模转换器.ppt
- 香港浸会大学:《Data Communications and Networking》课程教学资源(PPT讲稿)Chapter 10 Circuit Switching and Packet Switching.ppt
- 杭州电子科技大学:《计算机、互联网和万维网简介》教学资源(PPT课件)Chapter 01 C++ Programming Basics.ppt
- 《E-commerce 2014》电子商务(PPT讲稿)Chapter 5 E-commerce Security and Payment Systems.ppt
- 《WEB技术开发》教学资源(PPT讲稿)HTML AND CSS.ppt
- 《E-commerce 2014》电子商务(PPT讲稿)Chapter 12 B2B E-commerce:Supply Chain Management and Collaborative Commerce.ppt
- 清华大学出版社:《WEB技术开发》课程教学资源(PPT课件)第1章 WEB开发技术概述.ppt
- 《E-commerce 2014》电子商务(PPT讲稿)Chapter 9 Online Retail and Services.ppt
- 浙江大学:虚拟现实中基于图像的建模和绘制(报告PPT).ppt
- 中国科学技术大学:《现代密码学理论与实践》课程教学资源(PPT课件讲稿)第1章 引言(主讲:苗付友).pptx
- 《算法设计与分析 Design and Analysis of Algorithms》课程PPT课件:Tutorial 10.pptx
- 《C程序设计》课程PPT电子教案:第一章 概述.ppt
- 南京大学:《嵌入式网络物理系统》课程教学资源(PPT讲稿)时光自动机 Timed Automata.ppt
- 《PowerPoint》课程PPT教学课件:第六章 使用PowerPoint创建演示文稿.ppt
- 香港科技大学:Web-log Mining:from Pages to Relations.ppt
- 中国科学技术大学计算机学院:《高级操作系统 Advanced Operating System》课程教学资源(PPT课件)第四章 分布式进程和处理机管理(分布式处理机分配算法).ppt
- 清华大学:ICCV 2015 RIDE:Reversal Invariant Descriptor Enhancement.pptx
- 中国人民大学:Similarity Measures in Deep Web Data Integration.ppt
- 《数据结构》课程教学资源:课程PPT教学课件:绪论(数据结构讨论的范畴、基本概念、算法和算法的量度).ppt
- 《计算机组装与维修》课程教学资源(PPT课件讲稿)第二章 计算机系统维护维修工具使用.ppt
- 东南大学计算机学院:《操作系统概念 OPERATING SYSTEM CONCEPTS》课程教学资源(PPT课件)Operating-System Structures.ppt
- 《数字图像处理 Digital Image Processing》课程教学资源(PPT课件讲稿)第2章 图像分析.ppt
- 《EDA技术》实用教程(PPT讲稿)第5章 QuartusII 应用向导.ppt
- 香港浸会大学:《Data Communications and Networking》课程教学资源(PPT讲稿)Chapter 4 Transmission Media.ppt
- 北京大学:《搜索引擎 Search Engines》课程教学资源(PPT讲稿)Evaluating Search Engines(Search Engines Information Retrieval in Practice).ppt
- 西安电子科技大学:《8086CPU 指令系统》课程教学资源(PPT课件讲稿,共五部分,王晓甜).pptx
- 北京师范大学网络教育:《计算机应用基础》课程教学资源(PPT讲稿)第8章 计算机安全、第9章 多媒体技术.pptx
- 沈阳理工大学:《Java程序设计基础》课程教学资源(PPT课件讲稿)第1章 创建Java开发环境.ppt
- 成都信息工程大学(成都信息工程学院):分层分流培养个性发展的计算机卓越工程师——专业课分层教学探索与实践.ppt