登入帳戶  | 訂單查詢  | 購物車/收銀台( 0 ) | 在線留言板  | 付款方式  | 運費計算  | 聯絡我們  | 幫助中心 |  加入書簽
會員登入 新用戶登記
HOME新書上架暢銷書架好書推介特價區會員書架精選月讀2023年度TOP分類瀏覽雜誌 臺灣用戶
品種:超過100萬種各類書籍/音像和精品,正品正價,放心網購,悭钱省心 服務:香港台灣澳門海外 送貨:速遞郵局服務站

新書上架簡體書 繁體書
暢銷書架簡體書 繁體書
好書推介簡體書 繁體書

四月出版:大陸書 台灣書
三月出版:大陸書 台灣書
二月出版:大陸書 台灣書
一月出版:大陸書 台灣書
12月出版:大陸書 台灣書
11月出版:大陸書 台灣書
十月出版:大陸書 台灣書
九月出版:大陸書 台灣書
八月出版:大陸書 台灣書
七月出版:大陸書 台灣書
六月出版:大陸書 台灣書
五月出版:大陸書 台灣書
四月出版:大陸書 台灣書
三月出版:大陸書 台灣書
二月出版:大陸書 台灣書

『簡體書』算法设计与分析基础(C++版)(微课视频版)

書城自編碼: 3874261
分類:簡體書→大陸圖書→教材研究生/本科/专科教材
作者: 李春葆、陈良臣、喻丹丹
國際書號(ISBN): 9787302609483
出版社: 清华大学出版社
出版日期: 2023-06-01

頁數/字數: /
書度/開本: 16开 釘裝: 平装

售價:HK$ 71.8

我要買

 

** 我創建的書架 **
未登入.


新書推薦:
索恩丛书·我们如何成为今天的我们:德意志民族简史
《 索恩丛书·我们如何成为今天的我们:德意志民族简史 》

售價:HK$ 82.8
技术与德国 : 1800年至今
《 技术与德国 : 1800年至今 》

售價:HK$ 105.6
重返冰河时代:发现史前世界
《 重返冰河时代:发现史前世界 》

售價:HK$ 129.6
拉夫尔
《 拉夫尔 》

售價:HK$ 93.6
羞耻:规训的情感
《 羞耻:规训的情感 》

售價:HK$ 87.6
经济巨擘:思想碰撞与传承(精装典藏版)
《 经济巨擘:思想碰撞与传承(精装典藏版) 》

售價:HK$ 106.8
一如既往
《 一如既往 》

售價:HK$ 82.8
人工智能新时代:核心技术与行业赋能
《 人工智能新时代:核心技术与行业赋能 》

售價:HK$ 105.6

 

建議一齊購買:

+

HK$ 51.1
《 大学生心理健康教育 》
+

HK$ 48.6
《 “毛泽东思想和中国特色社会主义理论体系概论”教学专题研究(数字版教材)(互联网+远程一体化智慧数字教材) 》
+

HK$ 105.3
《 普通心理学(第5版) 》
+

HK$ 81.6
《 中学历史核心素养命题的原理和方法 》
+

HK$ 69.4
《 线性代数附册 学习辅导与习题全解 同济 第六版 》
+

HK$ 62.3
《 大学生信息素养实用教程 》
編輯推薦:
本书配套资源丰富,包括教学大纲、947页的教学课件、电子教案、程序源码、实验大纲、题库版在线作业,作者还为本书精心录制了20小时的微课视频。
內容簡介:
本书系统地介绍了C STL中各种数据结构容器的应用,讨论穷举法、归纳法、迭代法和递归法等基本算法设计方法,以及五大算法设计策略,即分治法、回溯法、分支限界法、贪心法和动态规划的原理及典型算法设计,同时以LeetCode、POJ和HDU网站相关题目为实战,深入剖析各种算法实现技术。 全书既注重原理又注重实践,配有大量图表、练习题、上机实验题和在线编程题,内容丰富,概念讲解清楚,表达严谨,逻辑性强,语言精练,可读性强。 本书既便于教师课堂讲授,又便于自学者阅读,可作为高等院校“算法设计与分析”课程的教材,也可供ACM和各类程序设计竞赛者参考。
關於作者:
李春葆,武汉大学教授,主要研究方向为数据挖掘和算法设计,从事近30年C/C 语言、数据结构和算法设计等课程的线本科教学工作,具备丰富的教学经验,曾参与深圳名企的笔试和面试题库建设。出版多本C/C 语言、数据结构、算法设计与分析及数据库开发方面的精品教材和教学辅导书。
目錄
第1章概论
1.1算法概述
1.1.1什么是算法
1.1.2算法描述
1.1.3算法和数据结构
1.1.4算法设计的基本步骤
1.2算法分析
1.2.1算法的时间复杂度分析
1.2.2算法的空间复杂度分析
1.3练习题
1.3.1单项选择题
1.3.2问答题
1.3.3算法设计题
第2章常用数据结构及其应用
2.1线性表
2.1.1什么是线性表


2.1.2vector向量容器
2.1.3STL通用算法
2.1.4list链表容器
2.2字符串
2.2.1什么是字符串
2.2.2string字符串容器
2.3栈、队列和双端队列
2.3.1什么是栈、队列和双端
队列
2.3.2deque双端队列容器
2.3.3queue队列容器
2.3.4stack栈容器
2.4二叉树和优先队列
2.4.1二叉树
2.4.2优先队列
2.4.3priority_queue优先队列
容器
2.5树和并查集
2.5.1树
2.5.2并查集
2.6图
2.6.1图基础
2.6.2生成树和小生成树
2.6.3短路径
2.6.4拓扑排序
2.7二叉排序树和平衡二叉树
2.7.1二叉排序树
2.7.2平衡二叉树

2.7.3集合容器set/multiset
2.7.4映射容器map/multimap


2.8哈希表
2.8.1什么是哈希表
2.8.2哈希集合容器unordered_set

2.8.3哈希映射容器unordered_map

2.9设计好的数据结构
2.10练习题
2.10.1单项选择题
2.10.2问答题
2.10.3算法设计题
2.11上机实验题
2.11.1高效地插入、删除和
查找
2.11.2一种特殊的队列
2.11.3方块操作
2.12在线编程题
第3章基本算法设计方法
3.1穷举法
3.1.1穷举法概述
3.1.2连续子序列和
3.1.3字符串匹配
3.1.4实战——查找单词
(POJ1501)
3.2归纳法
3.2.1归纳法概述
3.2.2直接插入排序
3.2.3楼梯问题
3.2.4猴子摘桃子问题
3.2.5实战——骨牌铺方格
(HDU2046)
3.3迭代法
3.3.1迭代法概述
3.3.2简单选择排序
3.3.3求多数元素
3.3.4求幂集
3.3.5实战——子集(LeetCode78)

3.4递归法
3.4.1递归法概述
3.4.2冒泡排序
3.4.3求全排列
3.4.4实战——展开字符串
(HDU1274)
3.5递推式计算
3.5.1直接展开法
3.5.2递归树方法
3.5.3主方法
3.6练习题
3.6.1单项选择题
3.6.2问答题
3.6.3算法设计题
3.7上机实验题
3.8在线编程题
第4章分治法
4.1分治法概述
4.1.1什么是分治法
4.1.2分治法框架
4.2求解排序问题
4.2.1快速排序
4.2.2查找一个序列中第k小的
元素
4.2.3归并排序
4.2.4实战——求逆序数
(POJ2299)
4.3求解查找问题
4.3.1查找和次大元素
4.3.2二分查找
4.3.3查找两个等长有序序列的
中位数
4.3.4查找问题
4.3.5*实战——有序数组中的
单一元素(LeetCode540)

4.4求解组合问题
4.4.1连续子序列和
4.4.2棋盘覆盖问题
4.4.3循环日程安排
问题
4.4.4求近点对距离
4.4.5实战——求两组点之间的
近点对(POJ3714)
4.5求xn和An问题
4.5.1求xn问题
4.5.2求An问题
4.5.3实战——用矩阵快速幂求
Fibonacci数列(POJ3070)

4.6练习题
4.6.1单项选择题
4.6.2问答题
4.6.3算法设计题
4.7上机实验题
4.8在线编程题
第5章回溯法
5.1回溯法概述
5.1.1问题的解空间
5.1.2什么是回溯法
5.1.3回溯法算法的框架
5.1.4回溯法算法的时间
分析
5.2基于子集树框架的问题求解
5.2.1子集和问题
5.2.2简单装载问题
5.2.30/1背包问题
5.2.4n皇后问题
5.2.5任务分配问题
5.2.6出栈序列
5.2.7图的m着色
5.2.8实战——救援问题
(HDU1242)
5.3基于排列树框架的问题求解
5.3.1任务分配问题
5.3.2货郎担问题
5.3.3实战——含重复元素的全
排列Ⅱ(LeetCode47)
5.4练习题
5.4.1单项选择题
5.4.2问答题
5.4.3算法设计题
5.5上机实验题
5.6在线编程题
第6章分支限界法
6.1分支限界法概述
6.1.1什么是分支限界法
6.1.2分支限界法的设计要点
6.1.3分支限界法的时间分析
6.2广度优先搜索
6.2.1广度优先搜索概述
6.2.2实战——抓牛问题
(POJ3278)
6.2.3实战——推箱子
(HDU1254)
6.2.4实战——腐烂的橘子
(LeetCode994)

6.3队列式分支限界法
6.3.1队列式分支限界法概述
6.3.2图的单源短路径
6.3.30/1背包问题
6.3.4实战——网格中的短
路径(LeetCode1293)
6.4优先队列式分支限界法
6.4.1优先队列式分支限界法
概述
6.4.2图的单源短路径
6.4.3实战——小体力消耗路
径(LeetCode1631)
6.4.40/1背包问题
6.4.5任务分配问题
6.4.6货郎担问题
6.5练习题
6.5.1单项选择题
6.5.2问答题
6.5.3算法设计题
6.6上机实验题
6.7在线编程题
第7章贪心法
7.1贪心法概述
7.1.1什么是贪心法
7.1.2贪心法求解问题具有的
性质
7.1.3贪心法的一般求解过程
7.2求解组合问题
7.2.1活动安排问题Ⅰ
7.2.2实战——加工木棍
(POJ1065)
7.2.3求解背包问题
7.3求解图问题
7.3.1用Prim算法构造小生
成树
7.3.2用Kruskal算法构造小
生成树
7.3.3实战——建设道路
(POJ3625)
7.3.4用Dijkstra算法求单源
短路径
7.3.5实战——短路径问题
(HDU3790)
7.4求解调度问题
7.4.1不带惩罚的调度问题
7.4.2带惩罚的调度问题
7.4.3实战——赶作业
(HDU1789)
7.5哈夫曼编码
7.5.1哈夫曼树和哈夫曼编码
7.5.2实战——后一块石头的
重量(LeetCode1046)
7.6练习题
7.6.1单项选择题
7.6.2问答题
7.6.3算法设计题
7.7上机实验题
7.8在线编程题
第8章动态规划
8.1动态规划概述
8.1.1从一个简单示例入门
8.1.2动态规划的原理
8.1.3动态规划求解问题的性质
和步骤
8.1.4动态规划与其他方法的
比较
8.2一维动态规划
8.2.1连续子序列和
8.2.2实战——子序列和
(LeetCode53)
8.2.3长递增子序列
8.2.4*活动安排问题Ⅱ
8.3二维动态规划
8.3.1三角形小路径和
8.3.2实战——下降路径小
和(LeetCode931)
8.4三维动态规划
8.4.1用Floyd算法求多源短
路径
8.4.2*双机调度问题
8.5字符串动态规划
8.5.1长公共子序列
8.5.2编辑距离
8.6背包动态规划
8.6.10/1背包问题
8.6.2完全背包问题
8.6.3实战——零钱兑换
(LeetCode322)
8.6.4*多重背包问题
8.7树形动态规划
8.7.1实战——庆祝晚会
(HDU1520)
8.7.2实战——找矿
(LeetCode337)
8.8区间动态规划
8.8.1实战——戳气球
(LeetCode312)
8.8.2实战——长回文
子串(LeetCode5)
8.9练习题
8.9.1单项选择题
8.9.2问答题
8.9.3算法设计题
8.10上机实验题
8.11在线编程题
第9章NP完全问题
9.1P类和NP类
9.1.1易解问题和难解问题
9.1.2判定问题
9.1.3P类
9.1.4NP类
9.2多项式时间变换和NP完全
问题
9.2.1多项式时间变换
9.2.2NP完全性及其性质
9.2.3个NP完全问题
9.2.4其他NP完全问题
9.3练习题
9.3.1单项选择题
9.3.2问答题
参考文献
內容試閱
党的二十大报告指出,教育、科技、人才是全面建设社会主义现代化国家的基础性、战略性支撑。必须坚持科技是生产力、人才是资源、创新是动力,深入实施科教兴国战略、人才强国战略、创新驱动发展战略,开辟发展新领域新赛道,不断塑造发展新动能新优势。
用计算机求解问题是将特定问题的求解过程转换为计算机可以执行的程序。能够设计好的程序是计算机专业学生的基本功。在计算机教学体系中涉及编程的主要课程有“高级程序设计语言”“数据结构”“算法设计与分析”。这些课程相互承接,程序设计语言是求解问题的工具,数据结构是求解问题的基础,算法设计是求解问题的关键。
“算法设计与分析”课程是计算机科学与技术等专业的专业必修课,课程目的是通过学习、理解并掌握算法设计的主要策略和算法复杂性分析的方法,能熟练运用各种数据结构和常用算法策略设计高效算法,培养学生分析问题和解决复杂工程问题的能力,为学生进一步学习后续课程奠定良好的基础。
本书是编者长期从事“数据结构”“算法设计与分析”课程本科生和研究生教学的经验总结,凝聚了编者的教学体会和理念。
1. 本书内容

全书由9章构成,各章内容如下。
第1章为概论,介绍算法的概念、算法描述方法、算法设计步骤和算法时空分析方法。
第2章为常用数据结构及其应用,结合STL介绍线性表、字符串、栈、队列、双端队列、树、二叉树、二叉排序树、平衡二叉树、优先队列、并查集、图和哈希表等数据结构的原理和应用,讨论如何针对求解问题设计好的数据结构。
第3章为基本算法设计方法,介绍穷举法、归纳法、迭代法和递归法等常用的算法设计方法,讨论递推式计算等基本算法分析方法。
第4章为分治法,介绍分治法的原理和框架,讨论利用分治法求解排序问题、查找问题、组合问题、求xn和An问题,包括求连续子序列和、字符串匹配、楼梯问题、求幂集和求全排列等典型算法。
第5章为回溯法,介绍解空间概念和回溯法框架,根据解空间的类型分别讨论基于子集树框架的问题求解方法和基于排列树框架的问题求解方法,包括子集和问题、简单装载问题、0/1背包问题、n皇后问题、任务分配问题、出栈序列、图的m着色和货郎担问题等典型算法。
第6章为分支限界法,介绍分支限界法的要点和框架,讨论广度优先搜索、队列式分支限界法和优先队列式分支限界法,包括图的单源短路径、0/1背包问题、任务分配问题和货郎担问题等典型算法。
第7章为贪心法,介绍贪心法的策略和要点,讨论采用贪心法求解组合问题、图问题、调度问题和哈夫曼编码,包括活动安排问题Ⅰ、Prim、Kruskal、Dijkstra和不带/带惩罚的调度问题等典型算法。
第8章为动态规划,介绍动态规划的原理和要点,讨论一维动态规划、二维动态规划、三维动态规划、字符串动态规划、背包动态规划、树形动态规划和区间动态规划算法设计方法,包括连续子序列和、长递增子序列、活动安排问题Ⅱ、三角形小路径和、Floyd算法、双机调度、长公共子序列、编辑距离、0/1背包问题、完全背包问题和多重背包问题等典型算法。
第9章为NP完全问题,介绍P类、NP类和NP完全问题。
书中带“*”号的部分作为选学内容。


2. 本书特色

本书具有如下鲜明特色:
(1) 由浅入深,循序渐进。每种算法策略从设计思想、算法框架入手,由易到难地讲解经典问题的求解过程,使读者既能学到求解问题的方法,又能通过对算法策略的反复应用掌握其核心原理,以收到融会贯通之效。
(2) 示例丰富,重视启发。书中列举大量的具有典型性的求解问题,深入剖析采用相关算法策略求解的思路,展示算法设计的清晰过程,并举一反三,激发学生学习算法设计的兴趣。
(3) 注重求解问题的多维性。同一个问题采用多种算法策略实现,例如任务分配问题采用基于子集树框架和排列树框架以及分支限界法求解,0/1背包问题采用回溯法、分支限界法和动态规划求解等。通过不同算法策略的比较,使学生更容易体会到每种算法策略的设计特点和各自的优缺点,以提高算法设计的效率。
(4) 强调实践和动手能力的培养。书中以实战形式讨论了部分在线编程题的设计过程,包括求解问题的相关知识点、完整可通过的程序代码和提交结果,这些实战题来自力扣中国、北京大学POJ和杭州电子科技大学HDU网站,让学生体会到“学以致用”和解决实际问题的乐趣。
(5) 本书配套有《算法设计与分析基础(C 版)学习和实验指导》(李春葆等,清华大学出版社),涵盖所有练习题、上机实验题和在线编程题的参考答案。
3. 教学资源

为了方便教师教学和学生学习,本书提供了全面而丰富的教学资源,内容如下。
(1) “算法设计与分析”课程教学大纲(含课程思政)和电子教案: 包含教学目的、课程内容和学时分配(42学时),以及各章的课程思政要点和每个课时的教学内容安排。
(2) 教学PPT: 提供全部教学内容的精美PPT课件(947页),供任课教师在教学中使用。
(3) 源程序代码: 所有源程序代码按章组织,例如ch3文件夹存放第3章的源程序代码,其中perm.cpp为求全排列的源程序代码,Example\\\\exam33.cpp为例33的源程序代码,HDU1274.cpp为实战题HDU1274的源程序代码。
(4) “算法设计与分析”实验课程教学大纲: 包含课程介绍、教学目的、实验基本要求与方式、实验报告、实验内容与学时分配(15~21学时),以及每个实验可供选择的单机实验题和在线编程题。
(5) 本书配套有绝大部分知识点的教学视频,视频采用微课碎片化形式组织(含96个小视频,累计超过20小时)。


资源下载提示
课件等资源: 扫描封底的“课件下载”二维码,在公众号“书圈”下载。
素材(源码)等资源: 扫描目录上方的二维码下载。
在线作业: 扫描封底的作业系统二维码,登录网站在线做题及查看答案。
视频等资源: 扫描封底的文泉云盘防盗码,再扫描书中相应章节的二维码,可以在线学习。

本书第1、3、4章由中国劳动关系学院陈良臣编写,第2章和第9章由武汉大学喻丹丹编写,第5~8章由武汉大学李春葆编写,李春葆完成全书的规划和统稿工作。本书的出版得到清华大学出版社魏江江分社长的全力支持,王冰飞老师给予精心编辑,LeetCode、POJ和HDU网站提供了无私的帮助,编者在此一并表示衷心感谢。
尽管编者不遗余力,但由于水平所限,本书仍可能存在不足之处,敬请教师和同学们批评指正。

编者
2023年4月

 

 

書城介紹  | 合作申請 | 索要書目  | 新手入門 | 聯絡方式  | 幫助中心 | 找書說明  | 送貨方式 | 付款方式 香港用户  | 台灣用户 | 大陸用户 | 海外用户
megBook.com.hk
Copyright © 2013 - 2024 (香港)大書城有限公司  All Rights Reserved.