新書推薦:
《
狂飙年代:18世纪俄国的新文化和旧文化(第二卷)
》
售價:HK$
177.0
《
万有引力书系 纳粹亿万富翁 德国财富家族的黑暗历史
》
售價:HK$
112.7
《
中国常见植物野外识别手册:青海册
》
售價:HK$
78.2
《
三星堆对话古遗址(从三星堆出发,横跨黄河流域,长江流域,对话11处古遗址,探源多元一体的中华文明)
》
售價:HK$
89.7
《
迷人的化学(迷人的科学丛书)
》
售價:HK$
147.2
《
宋代冠服图志(详尽展示宋代各类冠服 精美插图 考据严谨 细节丰富)
》
售價:HK$
87.4
《
形似神异:什么是中日传统政治文化的结构性差异
》
售價:HK$
55.8
《
养育不好惹的小孩
》
售價:HK$
79.4
|
編輯推薦: |
国家 级一流本科课程“数据结构”配套教材。
采用“问题导学”模式,以问题解决为主线,以学生学习为主体,帮助学生在解决问题的过程中掌握知识、培养能力、发展思维的教学模式。
面向新工科建设和发展需求,紧密跟踪人工智能、大数据等IT新技术及应用,对部分案例做了更新。
充分挖掘问题解决和算法设计与实现中的思政元素,将之有机地融入学习任务中,使学习者在潜移默化中受到教育。
根据《全国硕士研究生招生考试考试大纲》的新要求,增加了红黑树、外部排序、并查集等内容,增加了近几年的联考真题、IT面试真题、蓝桥杯软件设计大赛试题等。
配套提供电子课件、知识点视频、课程期中考试和期末考试样卷、课程设计题、实验及课程设计报告模板、思考与练习参考解答等资源。
|
內容簡介: |
本书共9章,围绕线性表、栈和队列、字符串、矩阵和广义表、树和二叉树、图等典型数据结构,介绍了基本概念、逻辑结构、存储结构、操作运算及算法实现、算法分析、案例应用,以及查找和排序这两种最基本操作的多种算法实现方法及性能分析。书中使用C语言定义各种数据结构,使用C/C 代码描述算法。
本书的每章以若干典型的导学案例为主线,由“知识学习”“能力培养”和“能力提高”等部分组成。围绕导学案例,引导学习者思考问题、对实际问题进行抽象建模、实现模型和应用模型。每章均附有小结、思考与练习、应用实战和学习目标检验。附录给出了考研考试大纲(数据结构部分)、Visual Studio 2022集成开发环境的安装与使用。同时,配套提供了课程期中考试和期末考试样卷(共3套)、课程设计题、实验及课程设计报告模板、学习资源链接,以及思考与练习参考解答等资源。
本书可作为高等院校计算机科学与技术、软件工程等相关专业“数据结构”课程的教材,以及研究生入学考试辅助用书,也可供计算机软件开发人员或编程爱好者参考和使用。
|
關於作者: |
陈波,南京师范大学计算机与电子信息学院/人工智能学院副院长、教授。江苏省首批课程思政示范课主持人。主要研究方向是信息安全和智慧教育。主持、参与多项国家级和省部级科研项目以及应用科技开发项目,发表科研论文80多篇,获得软件著作权、国家发明专利多项。获江苏省科技进步三等奖和解放军全军科技进步三等奖各1项。主持完成、江苏省教育教学研究课题10多项,发表CSSCI等教学研究论文20多篇。国家一流本科专业建设点学院负责人,主讲的“数据结构”课程获批国家一流课程。主讲的“移动互联网时代的信息安全防护”获评江苏省课程思政示范课程、江苏省中小学教师培训优秀网络课程、江苏省在线开放课程,受众超30万人。
|
目錄:
|
前言
第1章绪论
导学案例1:数据在计算机中如何组织
导学案例2:程序的效率如何改进
11知识学习
111数据结构课程的研究内容
112数据的结构
113算法与算法分析
12能力培养
121导学案例问题1-4、1-5和1-6的数据结构
122导学案例2的时间复杂度
13能力提高
131算法时间复杂度分析
132算法执行时间测试
本章小结
思考与练习
应用实战
学习目标检验
第2章数据元素关系线性的结构:线性表
导学案例1:实现一个简易的学生信息管理系统
导学案例2:实现一个简易的物资信息管理系统
21知识学习
211线性表的概念
212线性表的顺序存储及基本操作
213线性表的链式存储及基本操作
22能力培养
221导学案例1的顺序表实现
222导学案例1的单链表实现
23能力提高
231顺序表的其他操作
232单链表的其他操作
233顺序表和单链表的综合比较
本章小结
思考与练习
应用实战
学习目标检验
第3章操作受限的线性表:栈和队列
导学案例1:数制转换
导学案例2:排队叫号系统
31知识学习
311栈
312队列
32能力培养
321导学案例1的实现
322导学案例2的实现
33能力提高
331栈的其他应用
332队列的其他应用
本章小结
思考与练习
应用实战
学习目标检验
第4章数据元素特殊的线性表:字符串
导学案例:网络不良信息过滤
41知识学习
411字符串的概念
412字符串的存储结构
413字符串的操作算法
42能力培养:导学案例的实现
43能力提高:KMP模式匹配算法
本章小结
思考与练习
应用实战
学习目标检验
第5章数据元素扩展的线性表:矩阵和广义表
导学案例1:个性化推荐系统中的用户评分表
导学案例2:本科生创新实践项目中的人员关系
51知识学习
511矩阵
512广义表
52能力培养
521导学案例1的矩阵实现
522导学案例2的广义表实现
53能力提高
531稀疏矩阵的转置操作
532广义表的其他操作
本章小结
思考与练习
应用实战
学习目标检验
第6章数据元素关系分层的非线性结构:树和二叉树
导学案例1:查找U盘中文件的存储路径
导学案例2:对表达式树表示的算术表达式求值
导学案例3:压缩编码
61知识学习
611树
612二叉树
613树、森林与二叉树的转换
62能力培养
621导学案例1的实现
622导学案例2的实现
63能力提高
631二叉树的其他操作
632线索二叉树
633Huffman树与Huffman编码
634等价类与并查集
本章小结
思考与练习
应用实战
学习目标检验
第7章数据元素关系任意的非线性结构:图
导学案例1:构建最小造价通信网
导学案例2:设计简单的旅游交通费用查询软件
71知识学习
711图的基本概念
712图的存储结构
713图的遍历
714最小生成树
715最短路径
72能力培养
721导学案例1的实现
722导学案例2的实现
73能力提高
731AOV网与拓扑排序
732AOE网与关键路径
本章小结
思考与练习
应用实战
学习目标检验
第8章数据元素处理1:查找导学案例:简单通讯录查询
81知识学习
811查找的基本概念
812静态查找
813动态查找
82能力培养:导学案例的实现
83能力提高
831索引的概念
832索引结构的查找
本章小结
思考与练习
应用实战
学习目标检验
第9章数据元素处理2:排序导学案例:网络购物中的商品排序
91知识学习
911排序的基本概念
912交换类排序
913插入类排序
914选择类排序
915归并类排序
916分配类排序
92能力培养:导学案例的实现
93能力提高
931冒泡排序的改进
932外部排序
933排序算法总结
本章小结
思考与练习
应用实战
学习目标检验
附录
附录A计算机学科专业基础考试大纲(数据结构部分)
附录BVisual Studio 2022集成开发环境的安装与使用
参考文献
|
內容試閱:
|
“数据结构”是高等院校计算机科学与技术、软件工程等相关专业的核心课程之一,是计算机科学与技术、软件工程等专业研究生考试的必考科目之一,也是IT公司面试和笔试考核的主要内容。数据结构主要分析计算机中数据组织的方式和相关操作算法,涉及数据的存储结构和算法的基本概念与技术,包括线性表、栈和队列、字符串、矩阵和广义表、树和二叉树、图等常用数据结构及相关算法,以及排序和查找等算法技术。本课程既是对前导的程序设计类课程、离散数学等课程的深入和拓展,也为深入学习数据库、操作系统、计算机网络等后续专业课程奠定了必要的理论与实践基础。
本书第1版出版迄今已逾8年,受到了广大读者的欢迎,被百余所高校选为教材。这几年随着我们主讲的国家级一流本科课程“数据结构”的建设,本书从内容组织、体例编排和配套资源三大方面进行了修订与完善。
(1)更新全书内容,引导创新思维
“数据结构”是一门直接面向实际应用、解决实际问题的课程,它的教学目标是让学习者学会从复杂工程问题入手,分析研究计算机加工的数据结构的特性,以便能为实际问题所涉及的数据选择适当的逻辑结构、存储结构及其相应的操作算法,并掌握时间和空间复杂度分析技术。
编者从事“数据结构”课程的教学近30年,深切了解学习者对于学习“数据结构”课程的普遍体会:概念难理解、算法难设计、编程难实现、知识难应用。如何帮助学习者实现两个跨越——从实际应用问题到数据结构抽象的跨越和从数据结构概念到程序实现的跨越,是我们一直努力的目标。
本书第1版采用了“问题导学”模式,这是一种以导学案例创设学习情境,以问题解决为主线,以学生学习为主体,帮助学生在解决问题的过程中掌握知识、培养能力、发展思维的教学模式。本次修订在此基础上对内容又做了更新和完善,主要体现在以下5个方面。
1)更新了部分导学案例。面向新工科建设和发展需求,紧密跟踪人工智能、大数据等IT新技术及应用,对部分案例做了更新。例如,第4章字符串中网络不良信息过滤案例,第5章矩阵的个性化推荐系统中的用户评分表案例,第9章排序的网络购物中的商品排序案例等。
2)重新组织了教学内容。每章以若干典型的导学案例为主线,由“知识学习”“能力培养”和“能力提高”等部分组成。浅入深出、循序渐进,引导学习者分析案例问题中的已知信息,提炼数据及数据之间的关系(数据的逻辑结构),选择合适的存储方式(数据的存储结构)将待处理的数据保存到计算机中,然后在存储结构之上按照自顶向下逐步细化的方法设计算法,给出程序实现,并进行测试和调试分析。
3)有机融入了思政元素。本书在注重算法能力培养的同时也注重价值引领,充分挖掘问题解决和算法设计与实现中的思政元素,将之有机地融入学习任务中,使学习者在潜移默化中受到教育,培养其社会责任感、政治认同感,塑造其价值观和人生观,提升其文化素养、法制意识和道德修养,启迪他们关注国家、社会发展中的现实问题,善于进行问题抽象、设计及实现,激发问题发现、不懈探究等意识,培养其工匠精神和创新精神。每章最后增加了从知识、能力、素养、思政4个方面给出的学习目标检验表。
4)紧扣考研大纲。本书服务升学求职的实际需求,根据《全国硕士研究生招生考试计算机科学与技术学科联考计算机学科专业基础综合考试大纲》的新要求,增加了红黑树、外部排序、并查集等内容,课后思考与练习增加了近几年的联考真题、IT面试真题、蓝桥杯软件设计大赛试题等,既适合参加全国联考的考生及参加院校自主命题的考生进行学习和考试准备,也适用于备战IT行业求职面试、计算机程序设计与算法竞赛。全书设置了选择题、填空题、简答题、算法设计题、应用实战题等多种类型的题目,约400道。同时给出了3套期中和期末考试样卷供学生自测和教师选用,以及计算机程序设计能力测试及学习资源链接,还有思考与练习题较详细的解答,有助于学习者自主学习和提高。
5)强化了数据结构要素。数据的逻辑结构、存储结构和操作算法是数据结构的3个要素。本书在内容组织和介绍的过程中强化了这3个要素,学习者能更加深刻地理解数据结构的概念并熟练应用于解决实际问题。有关逻辑结构在基于数组(顺序存储)和链表(链式存储)这两种存储方式下所设计形成的多种存储结构见下表,有关经典算法设计策略介绍的安排见下面的知识图谱。章节数据结构要素关系特点逻辑结构基本存储结构实际常见存储结构23456789数据元素关系线性的结构数据元素关系分层的非线性结构数据元素关系任意的非线性结构数据元素处理数据元素处理线性操作受限操作受限元素特殊元素扩展元素扩展分层任意——线性表栈队列字符串矩阵广义表树二叉树图查找排序数组(顺序存储)
链表(链式存储)顺序表或链表顺序栈或链栈顺序队列或链队列字符数组二维数组、三元组和十字链表扩展链表双亲表示法、多叉链表、孩子
链表、孩子兄弟、并查集一维数组、二叉链表、堆邻接矩阵、邻接表、逆邻接表顺序表、索引表、哈希表顺序表、堆、败者树
(2)创新编写体例,激发理性思维
本书注重对学习者理性思维的引导。按照建构主义的学
|
|