《C语言常用算法分析》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:明日科技编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2012
  • ISBN:9787302276654
  • 页数:292 页
图书介绍:本书共分为4篇,第1篇为算法基础篇;第2篇为常用算法篇,是学习C编程技术的完美教程。

第1篇 算法基础篇 2

第1章 程序之魂——算法(自学视频、源程序:配套资源\mr\01\) 2

1.1魂之说 3

1.2算法的特性 4

1.3算法的表示方式 5

1.3.1用自然语言描述算法 5

1.3.2用流程图描述算法 5

1.3.3用N-S图描述算法 8

1.3.4用计算机语言描述算法 9

1.4算法性能分析与度量 10

1.4.1算法的性能指标 10

1.4.2算法效率的度量 10

1.4.3算法的时间复杂度 11

1.4.4算法的空间复杂度 12

1.5学习算法的原因 12

第2章 数据结构基础(自学视频、源程序:配套资源\mr\02\) 13

2.1数据结构概述 14

2.1.1数据结构的发展 14

2.1.2数据结构的研究对象 14

2.1.3数据结构与算法的关系 16

2.2数据结构的基本概念 16

2.3 C语言常见数据结构 18

2.3.1数组 18

2.3.2结构体 20

2.3.3链表 21

2.3.4栈 23

2.3.5队列 24

第3章 查找与排序算法(自学视频、源程序:配套资源\mr\03\) 26

3.1查找算法 27

3.1.1顺序查找 27

3.1.2折半查找 29

3.1.3分块查找 31

3.1.4哈希查找 33

3.2排序算法 38

3.2.1选择排序 38

3.2.2冒泡排序 40

3.2.3直接插入排序 43

3.2.4归并排序 45

3.2.5希尔排序 48

3.2.6快速排序 49

3.2.7各种排序算法的比较 52

第4章 基本算法思想(自学视频、源程序:配套资源\mr\04\) 54

4.1递归的概念和分治法 55

4.1.1递归的概念 55

4.1.2递归的应用——汉诺塔 55

4.1.3分治法的基本思想 56

4.1.4分治法的应用——棋盘覆盖问题 57

4.2动态规划法 59

4.2.1动态规划法的基本思想 59

4.2.2动态规划的应用——最大子段和 60

4.3贪心算法 61

4.3.1贪心算法的基本概念 61

4.3.2贪心算法的应用——哈夫曼编码 62

4.4回溯法 67

4.4.1回溯法的基本思想 67

4.4.2回溯法的应用——连续邮资问题 68

4.5分支限界法 70

4.5.1分支限界法的基本思想 71

4.5.2分支限界法的应用——旅行售货员问题 71

第2篇 常用算法篇 76

第5章 数学算法(自学视频、源程序:配套资源\mr\05\) 76

5.1随机数求π 77

5.2正态分布的成绩 82

5.3绘制最小圆 86

5.4满意的一元二次方程解 93

5.5计算定积分 101

5.6分解质因数 103

5.7最大公约数和最小公倍数 106

5.8数字的全排列 109

5.9递推化梯形法求解定积分 111

5.10迭代法开平方运算 115

5.11牛顿切线法解方程 117

5.12改进欧拉方法求解微分方程 119

5.13迭代法求解线性方程组 123

5.14计算贷款利息 127

5.15分数计算器 129

第6章 矩阵与数组问题(自学视频、源程序:配套资源\mr\06\) 132

6.1“脱壳”组数 133

6.2寻找矩阵中的“鞍点” 135

6.3魔幻方阵 137

6.4矩阵的转置运算 139

6.5勾股数组 141

6.6百灯判熄 143

6.7巧排螺旋数阵 144

6.8猜数四问 146

第7章 经典算法(自学视频、源程序:配套资源\mr\07\) 149

7.1约瑟夫环 150

7.2八皇后问题 152

7.3 0-1背包问题 156

7.4斐波那契数列 159

7.5寻找水仙花数 161

7.6爱因斯坦阶梯问题 162

7.7进制转换算法 163

7.8哥德巴赫猜想 165

7.9验证四方定理 167

7.10尼科彻斯定理 168

7.11角谷猜想 170

7.12 prim算法求最小生成树 171

7.13迪杰斯特拉算法 174

第3篇 趣味算法篇 178

第8章 数学趣题(自学视频、源程序:配套资源\mr\08\) 178

8.1警察抓犯人 179

8.2舍罕王的失算 181

8.3百钱买百鸡问题 183

8.4三色球问题 185

8.5填数字游戏 187

8.6渔夫捕鱼问题 190

8.7移数字游戏 191

8.8数字翻译器 194

8.9猴子吃桃问题 198

8.10马克思手稿中的数学题 199

8.11判断回文式素数 200

8.12完全数 204

8.13自守数 206

8.14一数三平方数 207

8.15古稀数 209

8.16亲和数 213

8.17对调数 215

第9章 逻辑推理题(自学视频、源程序:配套资源\mr\09\) 218

9.1魔术师的秘密 219

9.2婚礼上的谎言 220

9.3谁讲了真话 222

9.4白纸与黑纸 223

9.5判断坏球 224

9.6打渔晒网问题 229

9.7水池注水问题 231

9.8寻找假币 232

9.9常胜将军 234

9.10巧算国王分财物 236

9.11商人渡河问题 237

9.12马踏棋盘 243

9.13猜杏核 246

第4篇 算法竞技篇 250

第10章 计算机等级考试算法实例(自学视频、源程序:配套资源\mr\10\) 250

10.1数组的下三角置数 251

10.2查找单链表的结点 252

10.3二维数组的元素排序 254

10.4寻找二维数组的最大值 256

第11章 程序员考试算法实例(自学视频、源程序:配套资源\mr\11\) 258

11.1电话计费算法 259

11.2处理链表的重复元素 261

11.3剧场方形空位 263

11.4数组的数值操作 265

11.5三位数生成回文数 267

第12章 信息学奥赛算法实例(自学视频、源程序:配套资源\mr\12\) 269

12.1我知你心 270

12.2格雷码 272

12.3狡猾的狐狸遇上聪明的兔子 275

12.4 6174问题 276

12.5韩信点兵 279

12.6杨辉三角 281

12.7开关灯问题 284

12.8蛇形方阵 286