作品简介

本书从日常生活中常见的实例入手,引领读者进入算法和数据结构的抽象世界。由于数据结构、算法的知识比较抽象,使许多读者望而却步。本书在编写过程中,尽量使用读者容易理解的、简单的语言来描述算法和数据结构,对于一些复杂的内容,采用图文并茂的方式介绍其原理,使读者能很快理解相关知识。第1~5章介绍了常用算法和数据结构的相应代码,第6~8章介绍了使用数据结构和算法解决一些经典问题的程序,第9章介绍了信息学奥赛部分试题的解题代码,第10章给出了与算法和数据结构相关的常见面试题。书中的所有程序都是在Dev-C++开发环境中编写而成的,本书附录简单介绍了该开发环境的使用。

张昆,戴艳编著

作品目录

  • 前言
  • 上篇 算法与数据结构基础
  • 第1章 基础算法思想
  • 1.1 编程的灵魂:数据结构+算法
  • 1.2 算法的作用:猜价格游戏
  • 1.3 枚举(穷举)算法思想
  • 1.4 递推算法思想
  • 1.5 递归算法思想
  • 1.6 分治算法思想
  • 1.7 贪婪算法思想
  • 1.8 试探算法思想
  • 1.9 模拟算法
  • 1.10 算法的评价
  • 1.11 上机实践
  • 第2章 简单数据结构
  • 2.1 最简单的结构:线性表
  • 2.2 后进先出结构:栈
  • 2.3 先进先出结构:队列
  • 2.4 上机实践
  • 第3章 复杂数据结构
  • 3.1 层次关系结构:树
  • 3.2 网状关系:图
  • 3.3 上机实践
  • 第4章 常用算法——排序
  • 4.1 排序概述
  • 4.2 冒泡排序法
  • 4.3 快速排序法
  • 4.4 简单选择排序法
  • 4.5 堆排序法
  • 4.6 直接插入排序法
  • 4.7 希尔(Shell)排序法
  • 4.8 合并排序法
  • 4.9 排序算法的选择
  • 4.10 上机实践
  • 第5章 常用算法——查找
  • 5.1 查找的基本概念
  • 5.2 简单查找
  • 5.3 二叉排序树
  • 5.4 索引查找
  • 5.5 散列表
  • 5.6 上机实践
  • 下篇 用算法与数据结构解决实际问题 
  • 第6章 数学问题
  • 6.1 有趣的整数
  • 6.2 素数
  • 6.3 阶乘
  • 6.4 求π的近似值
  • 6.5 方程求解
  • 6.6 矩阵的运算
  • 6.7 一元多项式的运算
  • 6.8 上机实践
  • 第7章 数据结构问题
  • 7.1 约瑟夫环
  • 7.2 大整数四则运算
  • 7.3 进制转换
  • 7.4 括号匹配
  • 7.5 中序式转后序式
  • 7.6 停车场管理
  • 7.7 迷宫求解
  • 7.8 LZW压缩
  • 7.9 上机实践
  • 第8章 经典算法问题
  • 8.1 不定方程问题
  • 8.2 推算问题
  • 8.3 魔术方阵
  • 8.4 智力趣题
  • 8.5 趣味游戏
  • 8.6 上机实践
  • 第9章 信息学奥赛试题精解
  • 9.1 NOIP普及组试题精解
  • 9.2 NOIP提高组试题精解
  • 9.3 上机实践
  • 第10章 常见面试题及解答
  • 10.1 数据结构类面试题
  • 10.2 经典算法类面试题
  • 附录 Dev-C++开发环境的使用
展开全部