欢迎光临澳大利亚新华书店网 [登录 | 免费注册]

    • 算法设计与问题求解(计算机科学与技术第2版微课版面向新工科专业建设计算机系列教材全国高等学校计算机教育研究会十四五规划教材)
      • 作者:编者:邓泽林//李峰|责编:白立军//薛阳|总主编:张尧学
      • 出版社:清华大学
      • ISBN:9787302656807
      • 出版日期:2024/03/01
      • 页数:249
    • 售价:23.6
  • 内容大纲

        本书注重培养读者的算法设计与分析、问题求解的能力。本书读者需要掌握程序设计、数据结构等基础知识,并具备一定的编程能力。
        本书以算法设计与分析为主线,通过问题和案例引入内容,重点讲解利用算法求解问题的思路、算法执行过程及能力拓展。本书主要介绍了算法基础、递归算法设计、蛮力法、分治法、回溯法、贪心法、分支限界法、动态规划、图算法设计等,讲解了背包问题、任务分配问题、批处理作业调度问题、最优装载问题、旅行商问题、计算几何等经典问题,并提供了能力拓展环节,引导读者开展算法应用实践。算法使用C语言程序、伪代码等形式加以描述,并用图解的形式详细描述算法的执行过程,使读者能够深入了解算法的运行过程和结果。
        本书可作为本科院校算法设计与分析的教学用书,也可作为从事算法设计的科技人员、算法竞赛选手的参考书及培训教材。
  • 作者介绍

  • 目录

    第1章  算法基础
      1.1  算法概念
      1.2  算法描述
      1.3  算法主要类别及典型问题
        1.3.1  递归法
        1.3.2  递推法
        1.3.3  穷举法
        1.3.4  贪心算法
        1.3.5  分治法
        1.3.6  动态规划法
        1.3.7  分支限界法
        1.3.8  回溯法
      1.4  算法复杂度
        1.4.1  算法输入规模度量
        1.4.2  算法运行时间的度量
        1.4.3  渐进符号
        1.4.4  算法复杂度分析
      1.5  标准模板库
        1.5.1  动态数组vector的使用
        1.5.2  集合set的使用
        1.5.3  映射map的使用
        1.5.4  栈stack的使用
        1.5.5  队列与优先队列的使用
        1.5.6  排序sort的使用
      习题
    第2章  递归算法设计
      2.1  概念
      2.2  递归算法设计思想
      2.3  递归算法示例与过程分析
        2.3.1  全排列问题
        2.3.2  逆波兰表达式
      2.4  递归转换
        2.4.1  递归转尾递归
        2.4.2  递归转非递归
      2.5  能力拓展
        2.5.1  K数列
        2.5.2  自关联树状数据
        2.5.3  XML文件解析
      习题
    第3章  蛮力法
      3.1  概述
      3.2  蛮力法的主要设计思租
        3.2.1  使用蛮力法的几种情况
        3.2.2  蛮力法的求解步骤
      3.3  蛮力法示例与分析
        3.3.1  选择排序
        3.3.2  旅行商问题
        3.3.3  字符串匹配蛮力解决
        3.3.4  0-1背包问题
      3.4  能力拓展

        3.4.1  连续数和
        3.4.2  矩形个数
      习题
    第4章  分治法
      4.1  概述
      4.2  分治法设计思路
      4.3  分治法应用与过程分析
        4.3.1  最大子段和
        4.3.2  归并排序
        4.3.3  棋盘覆盖问题
        4.3.4  最近点对问题
        4.3.5  快速排序
      4.4  能力拓展
        4.4.1  一二进制的完全表示
        4.4.2  求两个等长有序序列的中位数
        4.4.3  找第k大的元素习题
    第5章  回溯法
      5.1  概述
      5.2  回溯法设计思路
      5.3  回溯法示例与过程分析
        5.3.1  n皇后问题
        5.3.2  0-1背包问题
        5.3.3  图的m着色问题
        5.3.4  批处理作业调度问题
      5.4  能力拓展
        5.4.1  全排列问题
        5.4.2  存在障碍物的迷宫问题
        5.4.3  最少考场数量
      习题
    第6章  贪心法
      6.1  概述
      6.2  贪心算法步骤及适用的问题
        6.2.1  贪心算法步骤
        6.2.2  适用贪心算法求解问题的特点
      6.3  贪心算法示例与过程分析
        6.3.1  部分背包问题
        6.3.2  最优装载问题
        6.3.3  区间调度问题
        6.3.4  旅行商问题
      6.4  能力拓展
        6.4.1  最小正整数
        6.4.2  数字游戏
        6.4.3  关闭闹钟
        6.4.4  过河
      习题
    第7章  分支限界法
      7.1  概述
      7.2  分支限界法设计思路
      7.3  分支限界法示例与过程分析
        7.3.1  0-1背包问题

        7.3.2  多段图最短路径问题
        7.3.3  旅行商问题
        7.3.4  作业调度问题
      7.4  能力拓展
        7.4.1  大富翁游戏
        7.4.2  最优装载问题
      习题
    第8章  动态规划
      8.1  概述
      8.2  动态规划算法设计规则
      8.3  动态规划算法问题求解
        8.3.1  0-1背包问题
        8.3.2  最长公共子序列
        8.3.3  最长上升子序列
        8.3.4  字符串相似度/编辑距离
        8.3.5  最大子段和
      8.4  能力拓展
        8.4.1  带通配符的字符串匹配
        8.4.2  拼图
      习题
    第9章  图算法设计
      9.1  概述
        9.1.1  图的定义
        9.1.2  图的相关概念
      9.2  图算法示例与分析
        9.2.1  最短路问题
        9.2.2  网络最大流问题
        9.2.3  二分图染色问题
      9.3  能力拓展
        9.3.1  杂交育种
        9.3.2  小偷逃跑
        9.3.3  朋友满意数量
      习题
    第10章  计算几何
      10.1  概述
      10.2  相关几何知识
        10.2.1  向量
        10.2.2  点积和叉积
        10.2.3  基本应用
        10.2.4  点是否在面内
        10.2.5  方向
        10.2.6  面积和角度
        10.2.7  凸性
      10.3  计算几何示例与分析
        10.3.1  点到直线的距离、判断线段是否相交
        10.3.2  凸包问题(极角排序)
        10.3.3  利用叉积计算多边形而积
      10.4  能力拓展
        10.4.1  不同直线计数
        10.4.2  面积最大的三角形

        10.4.3  而积最大的多边形
      习题
    第11章  计算复杂度理论
      11.1  计算模型
      11.2  P类和NP类问题
      11.3  NPC问题
      习题
    第12章  概率算法和近似算法
      12.1  概率算法
        12.1.1  概率算法的基本概念
        12.1.2  概率算法的分类
        12.1.3  数值概率算法
        12.1.4  价伍德算法
        12.1.5  拉斯维加斯算法
        12.1.6  蒙特卡罗算祛
      12.2  近似算法
        12.2.1  介绍
        12.2.2  顶点覆盖问题
        12.2.3  旅行商问题
      习题