程序语言的奥妙:算法解读 pdf epub mobi txt 电子书 下载 2024

图书介绍


程序语言的奥妙:算法解读

简体网页||繁体网页
李克秋 译



点击这里下载
    


想要找书就要到 静流书站
立刻按 ctrl+D收藏本页
你会得到大惊喜!!

发表于2024-12-29

类似图书 点击查看全场最低价

店铺: 金卫文化图书专营店
出版社: 科学出版社
ISBN:9787030346377
商品编码:29912730505
丛书名: 程序语言的奥妙--算法解读(四色全彩)形形色
开本:32
出版时间:2012-07-01

程序语言的奥妙:算法解读 epub 下载 mobi 下载 pdf 下载 txt 电子书 下载 2024

相关图书



程序语言的奥妙:算法解读 epub 下载 mobi 下载 pdf 下载 txt 电子书 下载 2024

程序语言的奥妙:算法解读 pdf epub mobi txt 电子书 下载



具体描述


商品参数
程序语言的奥妙:算法解读
曾用价 45.00
出版社 科学出版社
版次 1
出版时间 2012年07月
开本 32
作者 (日)杉浦贤
装帧 平装
页数 162
字数 175000
ISBN编码 9787030346377

目录
目录
第1章 什么是算法?
001 烹饪用的食谱就是算法 002
002 算法是古老的智慧 004
003 懂得了算法游戏水平会更高 006
004 算法必须满足“有效性”和“终止性” 008
005 算法有很多种类 010
COLUMN 算法的基础—结构化程序设计的思想 012
第2章 变量和数组
006 数据是各种各样的信息 014
007 所有的数据都有类型 016
008 值是数值、文字等的具体表现 018
009 变量是放入值的箱子 020
010 变量通过“变量名”区别 022
011 赋值语句有给变量赋值的能力 024
012 变量到变量的代入,是一个变量中的值被存储在另一个变量中 026
013 变量也有数据类型 028
014 连续排列的相同数据类型的元素集合称为数组 030
015 数组用“数组名”区分 032
016 数组的各元素用元素编号辨别 034
017 数组是有效存储相关联数据的储物柜 036
018 二维数组类似宾馆的房间 038
019 数组的各元素通过两个下标标识 040
020 字符串是字符数据的数组 042
021 字符串的字符长度由字符长度变量或“哨兵”管理 044
COLUMN 常用的变量名 046
第3章 数据结构
022 实现对大量数据进行高效管理—数据构造 048
023 数据结构有很多种 050
024 如同向上堆书一样的数据结构是栈 052
025 在收银台排队一样的数据结构是等待队列 054
026 用绳子把数据连起来的数据管理方式—链表 056
027 单向链表:从一端开始可以遍历所有数据 058
028 双向链表:从双向开始都可以遍历所有数据 060
029 查找第N 个元素时数组比较快,链表比较慢 062
030 插入和删除数据时链表比较快,数组比较慢 064
031 环形缓冲:一旦到达末尾即返回到开头 066
032 二叉树:一个父结点两个子结点组成的结构 068
033 堆:父结点的值不得比子结点的值大的二叉树 070
034 哈希表:数组和链表组合的一种数据结构 072
035 图:结点和边连接的形式 074
COLUMN 从0开始还是从1开始? 076
第4章 基本的算法 077
036 执行循环操作求1~N的和 078
037 使用数组保存数列的值 080
038 用变量求数组元素值的和 082
039 用计数器求数组的有效元素数 084
040 根据数组的各元素和以及元素个数求数组的平均值 086
041 求数组元素的*大值要使用保存*大值的变量 088
042 使用变量保存*小值求数组的*小值 090
043 使用其他的数组存放数组元素的顺序 092
044 以秒为单位的时间大小的比较 094
045 求时间差时,将差再表示成时间形式 096
046 利用临时变量交换两个变量的值 098
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
在线试读
第1章 什么是算法?
  在编写计算机程序时,知道各种各样的算法有助于我们写出一个更“优雅”的程序。为了创造高效率、正确解决问题的程序,让我们开始学习吧。
  001 烹饪用的食谱就是算法
  算法(Algorithm)是利用计算机解决问题的处理步骤。这里的问题有
  1 求*大公约数
  2 重新排列信息的顺序
  3 查找所需信息
  等不同的类型。在现代社会,这样的信息处理是通过计算机进行的,这种处理过程中的处理步骤称为算法。
  如上所述,算法就是解决问题的步骤。仔细观察,我们可以注意到算法不仅仅用于计算机的数据处理,现实世界中的各种问题也需要结合算法的概念来解决,其中具有代表性的就是烹饪中用到的食谱。
  食谱是各种美味料理的制作方法,需要用一定的步骤表示出来。例如,要做
  咖喱鸡肉
  猪肉炖土豆
  等菜品,食谱中记录着每道菜所需材料的种类和数量,并按步骤准确地描述了制作过程。按照这个步骤,谁都能够做出标准的咖喱鸡肉,并且,根据咖喱鸡肉的制作程序,任何人完成的一定是咖喱鸡肉,而不会成为盖浇饭或其他料理。这种“解决问题的处理步骤”(如咖喱鸡肉的烹饪食谱)称为算法。
  要点
  算法是“解决问题的处理步骤”
  烹饪用的食谱也是算法
  图1 什么是算法
  图2 烹饪用的食谱
  002 算法是古老的智慧
  烹饪用的食谱虽然也可以说是算法,但是即使按照食谱上的步骤做出来的料理也不一定是可口的。虽然与食谱上的步骤一致,但做出来的菜大家也许认为并不好吃。如果这样,这个食谱将被当做“坏食谱”,使用的人也会渐渐变少,自然就会被淘汰。
  另一方面,能做出每个人都认为可口的食物的食谱,会被多个人反复利用,这样的食谱就会被认为“好食谱”。“好食谱”通过人们的努力,将进一步成为美味料理的食谱。因此,烹饪用的食谱是为了创造美味料理而日积月累下来的“古老的智慧”。
  计算机的算法与其相似。自计算机问世以来,人们已研究出无数可以用计算机解决的处理问题的方法。在这种情况下,许多研究人员仍在改进算法,并研究有没有更普遍的处理方法,有没有更高效的处理方法,有没有数据量更少的处理方法。这样细化出来的好算法,已经在很多计算机程序中被使用了。所以,算法也是为创造更“优雅”的程序而积累的“古老的智慧”。
  好的算法本身会成为程序设计的范本。学习算法也在编写一个良好程序的过程中起到指导作用。
  要点
  算法是古老智慧的结晶,是程序的范本
  学习算法才能编写出高质量的程序
  图1 食谱的改进
  图2 算法的改进
  003 懂得了算法游戏水平会更高
  学习算法的同时能提高自己的编程能力。一个好的算法是编写程序的模型,因为它能创造计算机程序,其中还包含了程序的精髓。这与游戏中的“棋谱”是一样的道理,游戏中掌握好策略的一方往往能获胜。
  例如,“从画面上方开始追击敌方人物,并用移动炮台攻击敌人”等早期在电视游戏中经常看到的“××式”或“××击”的战斗攻略,如果按照这样的方法操作,不需要花费很长时间,每次都能轻松击败敌人,这就是游戏攻略中的“棋谱”。
  “棋谱”是围棋术语,指“某种棋局下,*好的下棋步骤”,在日本象棋或国际象棋中称为“棋式”,英文为theory。下围棋时,如果懂得棋谱,就不需要每次考虑“寻找*好的一步棋”,按照棋谱就可以走出*好的几步棋。棋谱是先人们智慧的结果,因此掌握多种棋谱的人
  更容易在对弈中获得胜利。熟练掌握棋谱的人与不懂棋谱的人对弈谁会获胜,显而易见。
  计算机算法有同样的道理。学过算法的人写出的程序和没学过算法的人写出的程序有明显的差距。要写出既能正确执行又能提高效率的好程序,算法的学习是不可或缺的。
  要点
  算法的学习类似学习游戏攻略
  算法是编写好程序的“棋谱”
内容介绍
在我们生活的世界中,各种各样形形色色的事物和现象,其中都必定包含着科学的成分。在这些成分中,有些是你所熟知的,有些是你未知的,有些是你还一知半解的。面对未知的世界,好奇的你是不是有很多疑惑、不解和期待呢?!“形形色色的科学”趣味科普丛书,把我们身边方方面面的科学知识活灵活现、生动有趣地展示给你,让你在畅快阅读中收获这些鲜活的科学知识!
  21世纪,飞速发展的计算机技术深入到手机、电视、相机、游戏机等的生活产品中。计算机都是依靠程序来运行的。为了编写出能够在计算机上运行良好的程序就必须学习计算机算法的知识。本书用流程图、程序语言等日常生活中经常出现的事物为工具,以图解的形式讲解了算法的相关知识,即使是不具备计算机知识的初学者,也能够轻松理解。
程序语言的奥妙:算法解读 电子书 下载 mobi epub pdf txt

程序语言的奥妙:算法解读 pdf epub mobi txt 电子书 下载
想要找书就要到 静流书站
立刻按 ctrl+D收藏本页
你会得到大惊喜!!

用户评价

评分

评分

评分

评分

评分

评分

评分

评分

评分

类似图书 点击查看全场最低价

程序语言的奥妙:算法解读 pdf epub mobi txt 电子书 下载


分享链接


去京东购买 去京东购买
去淘宝购买 去淘宝购买
去当当购买 去当当购买
去拼多多购买 去拼多多购买


程序语言的奥妙:算法解读 bar code 下载
扫码下载










相关图书




本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

友情链接

© 2024 windowsfront.com All Rights Reserved. 静流书站 版权所有