注册 登录 进入教材巡展
#
  • #

出版时间:2016-06

出版社:中国铁道出版社

以下为《Java常用算法手册(第3版)(含盘)》的配套数字资源,这些资源在您购买图书后将免费附送给您:
  • 中国铁道出版社
  • 9787113173791
  • 3版
  • 85394
  • 46176663-6
  • 平装
  • 16开
  • 2016-06
  • 600
  • 420
  • 工学
  • 软件工程
  • TP312JA
  • 程序设计
  • 本科
内容简介
  现代的设计任务大多通过计算机编程来完成,而算法起到了至关重要的作用。可以毫不夸张地说,算法是一切程序设计的灵魂和基础。选择合理的算法,可以起到事半功倍的效果。
  宋娟编著的《Java常用算法手册》分三篇,共14章,分别介绍了算法基础、算法应用和算法面试题。首先介绍了算法概述,然后重点分析了数据结构和基本算法思想;接着详细讲解了算法在排序、查找、数学计算、数论、历史趣题、游戏等领域中的应用;最后梳理和精选了一些经典的算法面试题,供读者开拓思维之用。
  本书附赠光盘中包含第14章PDF文档,书中实例代码和一整套的Java学习教程,同时我们精心制作了与书中内容紧密结合的共计20讲的算法讲解视频,供读者学习之用。
  本书旨在帮助Java语言初级程序员深入了解Java算法思想,提升其语言代码编程能力,还可以作为大中专院校学生学习数据结构和算法的参考书,也可为教师授课提供素材。
目录
第1章  算法和实现算法的Java语法
  1.1  建立算法初步概念
    1.1.1  什么是算法
    1.1.2  算法的发展历史
    1.1.3  算法的分类
  1.2  算法相关概念的区别
    1.2.1  算法与公式的关系
    1.2.2  算法与程序的关系
    1.2.3  算法与数据结构的关系
  1.3  算法的表示
    1.3.1  自然语言表示
    1.3.2  流程图表示
    1.3.3  N-S图表示
    1.3.4  伪代码表示
  1.4  算法的性能评价
    1.4.1  时间复杂度
    1.4.2  空间复杂度
  1.5  一个算法实例
    1.5.1  查找数字
    1.5.2  创建项目
    1.5.3  编译执行
  1.6  Java程序的基本结构
    1.6.1  类是一个基本单元
    1.6.2  main方法
    1.6.3  自定义方法
    1.6.4  intln的使用
    1.6.5  一个简单而完整的程序
  1.7  顺序结构
  1.8  分支结构
    1.8.1  se分支结构
    1.8.2  se嵌套
    1.8.3  switch语句
    1.8.4  编程实例
  1.9  循环结构
    1.9.1  while循环
    1.9.2  do…while循环
    1.9.3  for循环
    1.9.4  编程实例
  1.10  跳转结构
    1.  10.1  
    1.  10.2  con
    1.  10.3  编程实例
  1.11  小结
第2章  数据结构
  2.1  数据结构概述
    2.1.1  什么是数据结构
    2.1.2  数据结构中的基本概念
    2.1.3  数据结构的内容
    2.1.4  数据结构的分类
    2.1.5  数据结构的几种存储方式
    2.1.6  数据类型
    2.1.7  常用的数据结构
    2.1.8  选择合适的数据结构解决实际问题
  2.2  线性表
    2.2.1  什么是线性表
    2.2.2  线性表的基本运算
  2.3  顺序表结构
    2.3.1  准备数据
    2.3.2  初始化顺序表
    2.3.3  计算顺序表长度
    2.3.4  插入结点
    2.3.5  追加结点
    2.3.6  删除结点
    2.3.7  查找结点
    2.3.8  显示所有结点
    2.3.9  顺序表操作实例
  2.4  链表结构
    2.4.1  什么是链表结构
    2.4.2  准备数据
    2.4.3  追加结点
    2.4.4  插入头结点
    2.4.5  查找结点
    2.4.6  插入结点
    2.4.7  删除结点
    2.4.8  计算链表长度
    2.4.9  显示所有结点
    2.4.10  链表操作实例
  2.5  栈结构
    2.5.1  什么是栈结构
    2.5.2  准备数据
    2.5.3  初始化栈结构
    2.5.4  判断空栈
    2.5.5  判断满栈
    2.5.6  清空栈
    2.5.7  释放空间
    2.5.8  入栈
    2.5.9  出栈
    2.5.10  读结点数据
    2.5.11  栈结构操作实例
  2.6  队列结构
    2.6.1  什么是队列结构
    2.6.2  准备数据
    2.6.3  初始化队列结构
    2.6.4  判断空队列
    2.6.5  判断满队列
    2.6.6  清空队列
    2.6.7  释放空间
    2.6.8  入队列
    2.6.9  出队列
    2.6.10  读结点数据
    2.6.11  计算队列长度
    2.6.12  队列结构操作实例
  2.7  树结构
    2.7.1  什么是树结构
    2.7.2  树的基本概念
    2.7.3  二叉树
    2.7.4  准备数据
    2.7.5  初始化二叉树
    2.7.6  添加结点
    2.7.7  查找结点
    2.7.8  获取左子树
    2.7.9  获取右子树
    2.7.10  判断空树
    2.7.11  计算二叉树深度
    2.7.12  清空二叉树
    2.7.13  显示结点数据
    2.7.14  遍历二叉树
    2.7.15  树结构操作实例
  2.8  图结构
    2.8.1  什么是图结构
    2.8.2  图的基本概念
    2.8.3  准备数据
    2.8.4  创建图
    2.8.5  清空图
    2.8.6  显示图
    2.8.7  遍历图
    2.8.8  图结构操作实例
  2.9  小结
第3章  基本算法思想
  3.1  常用算法思想概述
  3.2  穷举算法思想
    3.2.1  穷举算法基本思想
    3.2.2  穷举算法实例
  3.3  递推算法思想
    3.3.1  递推算法基本思想
    3.3.2  递推算法实例
  3.4  递归算法思想
    3.4.1  递归算法基本思想
    3.4.2  递归算法实例
  3.5  分治算法思想
    3.5.1  分治算法基本思想
    3.5.2  分治算法实例
  3.6  概率算法思想
    3.6.1  概率算法基本思想
    3.6.2  概率算法实例
  3.7  小结
第4章  排序算法
  4.1  排序算法概述
  4.2  冒泡排序算法
    4.2.1  冒泡排序算法
    4.2.2  冒泡排序算法实例
  4.3  选择排序算法
    4.3.1  选择排序算法
    4.3.2  选择排序算法实例
  4.4  插入排序算法
    4.4.1  插入排序算法
    4.4.2  插入排序算法实例
  4.5  Shell排序算法
    4.5.1  Shell排序算法
    4.5.2  Shell排序算法实例
  4.6  快速排序算法
    4.6.1  快速排序算法
    4.6.2  快速排序算法实例
  4.7  堆排序算法
    4.7.1  堆排序算法
    4.7.2  堆排序算法实例
  4.8  合并排序算法
    4.8.1  合并排序算法
    4.8.2  合并排序算法实例
  4.9  排序算法的效率
  4.10  排序算法的其他应用
    4.  10.1  反序排序
    4.  10.2  字符串数组的排序
    4.  10.3  字符串的排序
  4.11  小结
第5章  查找算法
  5.1  查找算法概述
  5.2  顺序查找
    5.2.1  顺序查找算法
    5.2.2  顺序查找操作实例
  5.3  折半查找
    5.3.1  折半查找算法
    5.3.2  折半查找操作实例
  5.4  数据结构中的查找算法
    5.4.1  顺序表结构中的查找算法
    5.4.2  链表结构中的查找算法
    5.4.3  树结构中的查找算法
    5.4.4  图结构中的查找算法
  5.5  小结
第6章  基本数学问题
  6.1  判断闰年
  6.2  多项式计算
    6.2.1  一维多项式求值
    6.2.2  二维多项式求值
    6.2.3  多项式乘法
    6.2.4  多项式除法
  6.3  随机数生成算法
    6.3.1  Java语言中的随机方法
    6.3.2  [0,1]之间均匀分布的随机数算法
    6.3.3  产生任意范围的随机数
    6.3.4  [m,n]之间均匀分布的随机整数算法
    6.3.5  正态分布的随机数生成算法
  6.4  复数运算
    6.4.1  简单的复数运算
    6.4.2  复数的幂运算
    6.4.3  复指数运算
    6.4.4  复对数运算
    6.4.5  复正弦运算
    6.4.6  复余弦运算
  6.5  阶乘
    6.5.1  使用循环来计算阶乘
    6.5.2  使用递归来计算阶乘
  6.6  计算π的近似值
    6.6.1  割圆术
    6.6.2  蒙特卡罗算法
    6.6.3  级数公式
  6.7  矩阵运算
    6.7.1  矩阵加法
    6.7.2  矩阵减法
    6.7.3  矩阵乘法
  6.8  方程求