分享
 
 
 

新编实用算法分析与程序设计(计算机程序设计竞赛权威指导书)

新编实用算法分析与程序设计(计算机程序设计竞赛权威指导书)  点此进入淘宝搜索页搜索
  特别声明:本站仅为商品信息简介,并不出售商品,您可点击文中链接进入淘宝网搜索页搜索该商品,有任何问题请与具体淘宝商家联系。
  參考價格: 点此进入淘宝搜索页搜索
  分類: 图书,计算机/网络,程序设计,其他,

作者: 王建德,吴永辉编著

出 版 社: 人民邮电出版社

出版时间: 2008-7-1字数: 515000版次: 1页数: 327印刷时间: 2008/07/01开本: 大16开印次: 1纸张: 胶版纸I S B N : 9787115177063包装: 平装编辑推荐

作者编著的《实用算法的分析与程序设计》一书曾经在全国信息学奥林匹克竞赛产生了广泛和深远的影响。本书是作者在该书基础上十年磨一剑、精心编写而成的,反映了近年来程序设计教育和竞赛培训活动出现的新趋势。全书不仅从教学的角度详细讲解算法的理论,而且从竞赛的角度对经典习题进行详细解析,重在培养学生灵活运用算法的能力。

本书是一部优秀的算法参考书,更是各层次程序设计竞赛培训不可错过的辅导书。

本书特色:

采用结构清晰、移植性强且贴近自然语言表述的类程序设计语言。

各章节之间有着紧密的内在联系,但是彼此又相对独立。

例题多采用一题多解、多向求解的方法,且各章均有与其内容相匹配的练习题。

开辟专门网站(http://admis.fudan.edu.cn/publications.htm),为读者提供大量的经典例题和测试数据。

内容简介

本书是一部程序设计竞赛教程。书中首先讲述了算法的基本概念、各种排序与解题的方法及策略,然后论述了初等数论、计算几何学、搜索和图论的有关算法,最后讨论了动态规划。本书不仅从教学的角度详细讲解算法理论,而且从竞赛的角度对经典习题进行详细解析,培养学生灵活运用算法的能力。

本书既可以作为大专院校计算机专业算法类课程的教材,亦可以作为大中学校计算机竞赛活动的培训教材,还可供计算机软硬件研发人员参考。

作者简介

王建德,著名的信息学奥林匹克竞赛金牌教练,国务院特殊津贴专家,中学特级教师。他所辅导的学生在国际奥林匹克信息学竞赛(IOI)中获7金、2银、2铜的优异成绩。先后出版了22本关于程序设计和算法的学术专著。其中《实用算法的分析与程序设计》广受好评,长期以来是国内各类程序设计竞赛的必备教程。

目录

第1章绪论

1.1算法的基本定义

1.2算法的空间复杂度

1.2.1压缩存储技术

1.2.2原地工作

1.3算法的时间复杂度

1.3.1基本运算

1.3.2输入规模

1.3.3输入情况

1.3.4时间复杂度的阶

1.4优化时间效率的方法

1.4.1编程实现算法时注意细节优化

1.4.2寻找解题思路时尽可能考虑最优性

1.5实际生活中常见的算法问题

第2章排序、顺序统计与解题的基本策略

2.1计数排序与贪心策略

2.1.1计数排序

2.1.2贪心策略

2.2“二分”思想与快速排序

2.2.1分类和分治思想

2.2.2快速排序采用二分法

2.2.3快速排序和二分法在顺序统计问题上的应用

2.3堆排序的思想与应用

2.3.1在调整中保持堆性质

2.3.2建堆

2.3.3堆排序

2.4数据有序化

2.4.1预处理阶段的数据有序化

2.4.2实时处理阶段的数据有序化

习题

第3章初等数论的有关算法

3.1计算a和b最大公约数的欧几里得公式gcd(a, b)

3.2计算N的最大互质数

3.3欧几里得公式推广:计算最大公约数的线性组合

3.4计算同余方程ax≡b(mod n)(n>0)

3.5求解同余式组

3.6解不定方程ax+by=c

3.7初等数论知识的应用

3.7.1运用反复平方法求数的幂模n

3.7.2素数的测试

3.7.3整数的因子分解

习题

第4章计算几何学的有关算法

4.1线段的性质

4.2计算两条相交线段的交点

4.3判断任意一组线段中是否存在相交情况

4.4计算线段p1p2的中垂线方程

4.5计算凸多边形的重心位置和面积

4.6寻找最近点对

4.7计算包含平面所有点的二维凸包

4.8将凸包问题由二维拓展至三维

4.8.1计算三维凸包体积的基本思想

4.8.2计算由3个空间点组成的劈面三棱柱的体积V(R( i))

4.8.3计算包含点集p的三维凸包体积

4.9计算几何类问题的类型和应对的基本方法

习题

第5章搜索的有关算法

第6章图论的有关算法

参考文献

书摘插图

第1章绪论

什么是算法?为什么要对算法进行研究?相对于其他信息技术来说,算法的作用是什么?在实际生活中,算法有什么应用价值?衡量一个算法好坏的标准是什么?本章将围绕这些问题展开讨论。

1.1算法的基本定义

简单来说,所谓算法(algorithm)就是明确的计算过程,它取一个或一组值作为输入,并生成一个或一组值作为输出。亦即,算法就是一系列的计算步骤,用来将输入数据转换成输出结果,

如图1.1所示。

我们还可以将算法看作是一种工具,用来解决可以抽象出计算模型的问题。在表述该问题时,必须用严谨的语言规定所需的输入/输出关系。与之对应的算法则描述了一个特定的计算过程,用于实现这一输入/输出关系,如下所示。

输入:由n个数构成的一个序列(a1,a2,…an)。

输出:输出一个重排的序列(a1`,a2`,…an`)。,使得a1`≤a2`≤…≤an`。

需要指出的是,问题的表述方式是多样化的,并不一定像上面例子这么抽象呆板,例如,许多试题就采用了生动趣味的故事形式。而这里所说的语言严谨,是针对抽象计算模型而言。也就是说求解的目标是什么,给出了哪些已知信息、显式条件或隐含条件,最后应该用什么样的数据形式表达计算结果,必须描述清楚,切不能模棱两可或者产生歧义。同样,与问题对应的计算过程可以用自然语言、程序设计语言甚至硬件设计等形式来表达。不论采用哪种形式,解决问题的每一个步骤都必须准确定义,这是由于我们是和计算机打交道,稍有含糊则风马牛不相及。自然语言传递的信息,从语意上来看,可能会有不明之处,但我们处理它们时可根据上下文信息或平时习惯等来推理并准确地接受它,而计算机却不能。尤其是编程时,要用程序设计的范式语言精

确定义每一个步骤,千万不要误以为自己懂了计算机也会懂。

我们衡量一个算法好坏的标准主要有两个:正确性和时效性。

(1)算法的正确性。如果一个算法使其每一个输入实例都能在输出正确的结果后停止,则称它是正确的。

……

新编实用算法分析与程序设计(计算机程序设计竞赛权威指导书)

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
>>返回首頁<<
 
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有