
本来自书内容不涉及计算机专业课程的诸多概念、理论,读者之需要学过c语言,有算法、结构化程序设计和逻辑表达式的概念,并有独立上机编制30条左右语句小程序的经验,就能够掌握书中的程序设计思想、算法和技巧,并能举一反三,推广应用,是自己的编程自水平上一个台阶。
- 书名 程序算法与技巧精选
- 出版社 机械工业出版社
- 出版时间 2008年5月
- ISBN 978-7-111-23816-4
基本资料
作者:郭继展 郭勇 苏辉
ISBN:名毫若液978-7-111-23来自816-4
出版社:机械工业出版社
出版日期:20360百科08-5
页码:323 页
定价:36.00元
提要
计算机科学是算法的科学。进行程序设计不仅需要掌握常用的算法、技术和方法,还要敢于创新、构思巧妙的算法和探索编程中的诸多技巧。
算法和技巧都需要学习、借鉴和交流。本书分17章,139个例题。书中介绍的算法和技巧涉及到随机数函数理论,基础数论,新意幻方,提高程序运行速度和精度,特定数据排序,穷举、递推、递归和迭代等诸多方面。这些算城校五裂领维村告重着法和技巧大多是作者历年从事教学、软件开发、学术研究和学习的成果总结。
本书可作为大专院校师生和计算机编程人员或自学人员参考。
编辑推荐
巧算π值10000位
来自哥德巴赫猜想的筛法验证
统计法排序--百万整整只教观晶需1秒
计算机辅助数学证给弱明--3个数学黑洞
辅助解智力测验题--360百科12只球中挑坏球
应用程序增加智能--显示解题素杀源其员针大术过程和精确解
内容选读
第1章 算法--程序的灵魂
1.1 计算机科学是曲练蒸纸算法的科学
1. 什么是算法
算法是对特定问题求解步骤的一种描述,包含操作的有限规则和操作的有限序列。
通俗一点讲,算法就是一个解决问题的公式(数学手册上的公式都是经典算法)、规则、思路、方法和步骤。算法可以用自然语言描述,也可以用流程图描述,但最终要用计算机语言编程,上机实现。
有些问题算法是简单的,手算人人都会,但编程上机实现却很难(本书将对这一问题做较多的讨论)。例如求100位数的四则运算,求线性方程组的精确解等。一个成功的算法,应该有良好的速度、精度和清例布裂成超理乐画晰度。
人没有算法,计算机也无能为力。算法错了,计算机将误入歧途。20世纪初的数学家希尔伯特提出了23个问题。一谓样永常留个世纪过去了,有的问题还没有解决,就是因为数学大师们仍找不到一个合适的算法。从这一点讲,计算机的太频理论基础是数学。
2. 好的简车教论围由服重发着队算法具备的属性
(1) 确定性。算法应当满足具体问题的需求,正确反映问题对输入、输出和加工处理等方面的要求。第一条指并令必须有确定的含义和作用,对于相同的输入必须得出相同的执行结果。
(2) 有限性。算法中每条指迫欢套路金门础令的执行次数是有限的,执行时间也是有限的。算法执行有限步后必然结束,不能要求无休止地执行下去放杆化板镇代路着裂问。如近似计算,当达到要求的精度或要求的计算数时,即可停止。
……
目录
出版说明
歌委冷 前言
第1章 算法测--程序的灵魂
1.1 计算机科学是算法被的科学
1.2 算法是有多样性
1.3 奇妙算法是智慧的结晶
1.4 穷举法--编程的瑰宝
第2章 随机数函数--计算机模制医通学南远测拟的基石
2.1 高质量的均匀分布的随机函数
2.2 八种行该常用的随机数函数
第3章 数组步抗依亮除片的波台乐加--设计算法的重要手段
3.1 百灯判熄--数良于货业积本耐溶径组元素变号代替开关
3.2 打印杨辉三角形--数组元素相加胜过组合
3.3 新战士的年龄--数组嵌套妙比数字
3.4 巧排螺旋数阵--数组下标灵活表旋向
3.5 小孩子围圈分糖块--数组下标灵活表旋向
3.6 猜数四问--一维数组列方阵
第4章 整数问题--问题简明算法有难易
4.1 徒工工资数--数有特点算法有创新
4.2 古稀数--循序渐进连环验证
4.3 巧算国王分财物--由部分推知全体
4.4 六位的翻两番数--多个未知数巧合作一个
4.6 孙子问题--真谛原本在"求一"
4.7 完全数--全赖欧氏定理领航
4.7 亲和数--因子试算只到平方根
4.8 自守数--两位连推到十位
第5章 平方数问题--算法多从数的平方入手
5.1 一数三平方数--数组元素预算平方
5.2 卡普列加数--推导公式简化编程
5.3 勾股数组--觅公式算法直接得解
5.4 巧妙验证四个平方数和的定理--一用筛法(数组作筛)
5.5 十数字组四个平方数--巧用回退
5.6 金蝉平方数--"脱壳"组数
5.7 连解佩尔方程--测试细节不容忽视
第6章 素数问题--让古老算法结新果
6.1 筛一亿内的素数--二用筛法
6.2 哥德巴赫猜想验证--三用筛法
6.3 求费尔马"二平方"素数--"滚雪球"式地得到所使用的素数
6.4 回文式素数--依然含有诸多猜想
6.5 双向环形素数--循环移位组数判断
6.6 趣谈莫林素数--突显计算机、网络的魅力
第7章 用算法提高程序的运行速度
7.1 求百万内回文式素数--优化求解顺序提高速度300倍
7.2 百鸡问题--减少循环重数提高速度5000倍
7.3 求自幂数--用数组预作乘法提高速度100倍
7.4 组合平方数--条件化为位运算表示提高速度100000倍
……
第8章 用算法提高程序的运算精度
第9章 特定数据排序--设计特效算法
第10章 取用计算机的几种编码
第11章 递推、递归和迭代--三种基本算法
第12章 逻辑推理--设计符合计算机的简捷算法
第13章 使应用程序增加智能--显示解题过程和精确解
第14章 幻方新意新解--提出问题力求解决问题
第15章 计算机辅助解智力测验题
第16章 计算机辅助数学证明
第17章 必须警惕计算机犯错误