点此搜书

程序语言的奥妙  算法解读
  • 作 者:(日)杉浦贤著;李克秋译
  • 出 版 社:北京:科学出版社
  • 出版年份:2012
  • ISBN:9787030346377
  • 标注页数:163 页
  • PDF页数:174 页
  • 请阅读订购服务说明与试读!

文档类型

价格(积分)

购买连接

试读

PDF格式

8

立即购买

点击试读

订购服务说明

1、本站所有的书默认都是PDF格式,该格式图书只能阅读和打印,不能再次编辑。

2、除分上下册或者多册的情况下,一般PDF页数一定要大于标注页数才建议下单购买。【本资源174 ≥163页】

图书下载及付费说明

1、所有的电子图书为PDF格式,支持电脑、手机、平板等各类电子设备阅读;可以任意拷贝文件到不同的阅读设备里进行阅读。

2、电子图书在提交订单后一般半小时内处理完成,最晚48小时内处理完成。(非工作日购买会延迟)

3、所有的电子图书都是原书直接扫描方式制作而成。

第1章 什么是算法? 1

001烹饪用的食谱就是算法 2

002算法是古老的智慧 4

003懂得了算法游戏水平会更高 6

004算法必须满足“有效性”和“终止性” 8

005算法有很多种类 10

COLUMN 算法的基础——结构化程序设计的思想 12

第2章 变量和数组 13

006数据是各种各样的信息 14

007所有的数据都有类型 16

008值是数值、文字等的具体表现 18

009变量是放入值的箱子 20

010变量通过“变量名”区别 22

011赋值语句有给变量赋值的能力 24

012变量到变量的代入,是一个变量中的值被存储在另一个变量中 26

013变量也有数据类型 28

014连续排列的相同数据类型的元素集合称为数组 30

015 数组用“数组名”区分 32

016数组的各元素用元素编号辨别 34

017数组是有效存储相关联数据的储物柜 36

018二维数组类似宾馆的房间 38

019数组的各元素通过两个下标标识 40

020字符串是字符数据的数组 42

021字符串的字符长度由字符长度变量或“哨兵”管理 44

COLUMN常用的变量名 46

第3章 数据结构 47

022实现对大量数据进行高效管理——数据构造 48

023数据结构有很多种 50

024如同向上堆书一样的数据结构是栈 52

025在收银台排队一样的数据结构是等待队列 54

026用绳子把数据连起来的数据管理方式——链表 56

027单向链表:从一端开始可以遍历所有数据 58

028双向链表:从双向开始都可以遍历所有数据 60

029查找第N个元素时数组比较快,链表比较慢 62

030插入和删除数据时链表比较快,数组比较慢 64

031环形缓冲:一旦到达末尾即返回到开头 66

032二叉树:一个父结点两个子结点组成的结构 68

033堆:父结点的值不得比子结点的值大的二叉树 70

034哈希表:数组和链表组合的一种数据结构 72

035图:结点和边连接的形式 74

COLUMN从0开始还是从1开始? 76

第4章 基本的算法 77

036执行循环操作求1~N的和 78

037使用数组保存数列的值 80

038用变量求数组元素值的和 82

039用计数器求数组的有效元素数 84

040根据数组的各元素和以及元素个数求数组的平均值 86

041求数组元素的最大值要使用保存最大值的变量 88

042使用变量保存最小值求数组的最小值 90

043使用其他的数组存放数组元素的顺序 92

044以秒为单位的时间大小的比较 94

045求时间差时,将差再表示成时间形式 96

046利用临时变量交换两个变量的值 98

047用欧几里得相除法求2个数的最大公约数 100

COLUMN代码和数据存在哪里? 102

第5章 排序和搜索 103

048排序是指按照一定规则对元素对象进行排列摆放 104

049多种多样的排序算法 106

050把数据放于其他数组(桶)来进行排序的“桶排序” 108

051从数值的低位开始依次重复桶排序的“基数排序” 110

052选择最小值(最大值)与排好序的末位交换的“简单选择法” 112

053相邻数据交换的“简单交换法”(冒泡排序) 114

054在已排序数据的正确位置插入数据的“简单插入法” 116

055把数据列按照一定间隔分组而进行排序的“希尔排序” 118

056把多个排序结果的数列合在一起的“合并”(归并) 120

057利用归并的算法进行排序的归并排序 122

058通过与基准数据比较大小并把数列进行二分的“快速排序” 124

059利用堆的构造进行排序的“堆排序” 126

060搜索是从多个数据中找出目标数据 128

061从首位元素开始逐个进行比较处理的“线性查找” 130

062能够从排好序的数列中快速找出数据的“二分查找” 132

063在给定字符串中查找指定字符串位置的“字符串查找” 134

064从不一致字符的位置和局部字符串的结构提高查找效率的KMP法 136

065从局部字符串的末尾到开头比较字符的BM法 138

COLUMN利用关系数据库进行排序和查找 140

第6章 其他算法 141

066通过活用微分来求高次方程式解的牛顿法 142

067联合方程组的求解方法是高斯消元法 144

068根据梯形面积的计算求定积分值的梯形法 146

069用于求最短时间、最短距离之类的最优路径的方法:基于图的迪杰斯特拉法 148

070判断自然数n是否是素数的“埃拉托色尼筛法” 150

071利用递归调用求n的阶乘 152

COLUMN算法和流程图 154

第7章 算法的复杂度 155

072算法的复杂度中有时间复杂度和空间复杂度 156

073时间复杂度通过“运算”、“条件比较”、“代入处理”等操作次数来测量 158

074算法的复杂度用“O记法”来表示 160

COLUMN提高编程能力的方法 162

参考文献 163

购买PDF格式(8分)
返回顶部