本教材与现有教材主要区别在于,将数据结构理论知识点和企业项目知识点进行对照,然后安排一个个项目来训练这些理论知识点,达到从学习理论知识到应用理论知识解决实际项目问题水平,提高学生实践动手能力。 本教材特色、创新如下:(1)将理论知识训练分为3个阶段,分别安排习题、实验和项目进行训练,即知识点对应习题训练,知识单元对应实验和技术专题训练,知识体系对应行业项目,逐步递进,一步步引导学生如何从理论学习,逐步过渡到应用完整知识解决实际行业项目。(2)本教材全部以实践动手能力为主,和理论教材深度融合,边学习边实践。(3)本教材中挑选典型项目,均是企业典型项目或项目某一个部分,是真实项目训练。
本书是《数据结构(C语言版)》配套的实验指导和习题集,本书内的所有语言均采用C/C++语言,所有应用程序均在Microsoft Visual Studio 2010集成开发环境下编译并通过。 本书结合企业常用的实际案例、应用环境和软件开发技术,对线性表、队列、二叉树、图、查找等多个重要的数据结构知识单元进行了分析和设计,并为每个知识单元设计了实验指导和丰富的习题,力求使学生充分理解这些知识并通过实验指导、习题和综合实践来验证所学的知识。全书分为三大部分:第一部分为实验指导,共安排了六个实验项目,可对应课堂练习或实验教学,重点训练每一知识单元的编程实现技巧;第二部分为习题,可对应课堂练习或课外作业,进一步巩固和检验各单元知识点的掌握情况;第三部分为综合实践,可对应课程设计,该部分利用一个游戏项目综合训练数据结构核心知识和算法在企业实际项目中的应用。 本书适合各类高等院校计算机专业学生作为数据结构实践教学参考用书,也适合作为对数据结构与算法应用开发感兴趣的学习者的指导用书或参考书。
数据结构是计算机专业的必修主干课程之一,是一门实践性很强的课程。为了满足计算机类各专业学生对数据结构课程的上机、知识巩固和实践指导需求,特编写了本书。本书旨在方便学生通过大量的实验和习题的练习,充分掌握数据结构的基本知识,并培养学生运用所学理论来分析和解决实际问题的能力以及严谨、求实的编程作风。为了帮助学生学会如何把现实世界的问题转化为计算机内部的表示和处理,我们为几种常用的数据结构和算法精心设计了实验项目。这些实验项目全部按企业项目开发思路进行分析、设计和编程实施。同时,针对教材中典型知识点,我们还编写了丰富的配套习题供学生进行知识点检验和训练。除此之外,本书还设计了1个游戏案例,并且结合C++、MFC Dialog可视化界面和GDI绘图等实用开发技术,提高数据结构和算法应用实践能力。在实践过程中,引导读者理解数据结构和算法中知识单元与项目需求如何进行技术对接,并同时采用迭代开发思路进行每一个功能开发。 全书主要分为实验指导、习题和综合实践三部分。 实验指导部分:针对开发工具、线性表、队列、树、图、查找设计了实验项目,以软件开发的形式加以呈现,包括实验目标、实验任务和实验实施等内容。 习题部分:针对重点理论知识,编排了练习题,包含单项选择题、填空题、判断题、综合题以及重点章节的算法设计题,并配有参考答案,供学生检验各知识点的掌握情况。 综合实践部分:设计了1套“连连看游戏”实践案例,通过完整实践数据结构和算法核心知识,阐释了数据结构在企业项目中的应用,同时详细讲解实践项目迭代开发过程。 本书由武汉科技大学袁嵩担任主编,由武汉市软酷网络科技有限公司马庆槐、武汉科技大学熊莹、武汉晴川学院徐嘉担任副主编,全书由袁嵩统稿,熊莹进行了审核。在本书编写过程中,软酷网(www.ruanko.com)为本书提供实践参考资料,其中,马庆槐总监为我们提供了项目资源和企业项目实施过程资料,郑婕和王博宜项目经理负责项目的开发和测试,并完成部分图表绘制及文档排版工作,在此对他们表示衷心感谢。同时也特别感谢在本书出版过程中给我们支持与帮助的华中科技大学出版社的相关编辑和工作人员。 由于编者的水平和时间有限,本书难免出现错误,对于本书的任何问题,恳请读者批评指正。
袁嵩、男、1976.11、博士、副教授、武汉科技大学计算机学院软件系副主任,主要负责学院产业人才培养计划、荆楚卓越人才协同育人计划的培养方案制定和实施,主持校级教研项目2项、省级教研项目1项、教育部产学合作协同育人项目2项,指导学生参加国*级、省级大学生创新创业训练计划项目和各类大学生课外科技活动竞赛获奖,担任《数据结构》课程负责人,从事《数据结构》教学10余年,校企合作指导大学生创新创业项目实践、生产实习、毕业实习等,曾获武汉科技大学教学优秀一等奖、教学新秀、十佳青年教师等荣誉称号。
概述/1 第一部分实验指导 1Visual Studio开发工具/4 2线性表(一元多项式相加)/7 3队列(银行叫号系统)/18 4树和二叉树(随机地图生成器)/32 5图(公交线路图)/56 6查找(字符统计程序)/71 7实验报告要求/86 第二部分习题 1绪论/87 2线性表/91 3栈和队列/100 4数组和广义表/104 5树和二叉树/108 6图/121 7查找/132 8排序/138 9参考答案/143 第三部分综合实践(连连看游戏) 1实践目标/189 2需求分析/189 3系统设计/191 4创建工程/195 5主界面/198 6定义游戏数据/202 7绘制游戏地图/206 8一条直线消子/215 9两条直线消子/231 10三条直线消子/235 11判断胜负/240 12重排/242 13提示/246