数据结构  
 
当前位置:湖南第一师范学院>>一师数字资源中心 >> 精品课程 >> 数据结构
教学内容
 
     理论课和实验(含实践)课教学内容

    一、本课程在专业培养目标中的定位与课程目标
   《 数据结构》是我校计算机教育、计算机应用技术专业的专业基础课程,也是应用电子技术、数学教育等理工类专业的选修课。主要讨论抽象数据类型、数据结构和算法的复杂度分析。设置本课程的目的是一方面训练学生理解掌握各种基本数据结构的要领,以便能够编写出各种典型算法,另一方面,培养学生应用各种典型算法解决具体应用问题的能力。本课程为操作系统和数据库原理等后续课程提供必要的基础知识,是深入学习计算机软件技术的必要条件,也是抽象思维能力培养的重要途径。
 
    本课程的核心内容主要包括个模块:
    第一模块,数据结构绪论。主要介绍数据结构的基本概念,抽象数据类型,算法和算法分析的方法。
    第二模块,线性结构。主要介绍线性表的概念,顺序表的逻辑结构、存储结构和运算,线性链表、循环链表、双向链表的运算,栈的存储结构、运算和应用,队列的存储结构、运算和应用,串的概念、存储结构和运算,数组的逻辑结构、存储结构、运算和应用,特殊矩阵和稀疏矩阵的存储结构和运算。
    第三模块,树和二叉树。主要介绍树的概念,树的逻辑结构、存储结构,二叉树的概念、存储结构,树、二叉树的遍历,线索二叉树,树与二叉树的转换,哈夫曼树。
    第四模块,图。主要介绍图的逻辑结构、存储结构,图的遍历,最小生成树,最短路径,拓扑排序。
    第五模块,查找。主要介绍查找的概念,静态表的查找算法与分析,动态查找表的查找算法与分析,散列表的查找算法与分析。
    第六模块,排序。主要介绍排序算法的基本概念,五类排序算法:插入排序、交换排序、选择排序、归并排序和基数排序的算法、分析和比较。    
   
    二、知识模块顺序及对应的学时

    1.本课程的知识模块顺序及对应的学时如下表所列(适用于师范类专业)

序号

知识模块内容

讲授学时

课内实验学时

课外实验学时

1

绪论

2

   

2

线性表

6

2

3

3

栈和队列

6

 

4

4

2

   

5

多维数组

2

 

2

6

树和二叉树

6

4

4

7

6

4

4

8

查找

4

   

9

排序

5

2

2

总学时:51(+21)

39

12

21

课程学习完,安排课程设计2周(分散进行),17学时。

 
  2.本课程的知识模块顺序及对应的学时如下表所列(适用于应用技术类专业)
 

序号

知识模块内容

学时

实验学时

课外实验学时

1

绪论

3

   

2

线性表

6

2

4

3

栈和队列

5

 

6

4

4

 

0

5

多维数组

4

 

2

6

树和二叉树

9

4

4

7

9

4

4

8

查找

8

 

4

9

排序

8

2

6

总学时:68(+32)

56

12

32

课程学习完,安排课程设计1周(分散进行),17学时。

 
   
   三、课程的重点、难点及解决办法

   
   1.本课程的教学重点

   本课程的教学重点是顺序表的插入和删除运算,链表的插入和删除运算,栈和队列的运算和应用,特殊矩阵的压缩存储,二叉树的性质,二叉树的遍历,哈夫曼树,二叉树与树的转换,图的存储结构,最小生成树,最短路径,静态查找表,动态查找表,散列表,各种排序算法。

   
   2.本课程的教学难点

   本课程的教学难点是链表的运算,栈和队列的应用,二叉树的遍历,哈夫曼树,最小生成树,最短路径,快速排序,排序算法的比较和选择。

  
   3.解决的办法
    为了突破重点,解决难点,本课程教学以数据结构教学课件的教学设计为基础,以链表、栈、队列、二叉树、图、查找、排序等为核心内容,在课堂教学和实验教学中采用如下形式:
   (1)采用项目驱动教学,在讲述算法原理的同时引入应用实例,如火车调度、电梯算法、银行排队等待、电报编码,城市交通指挥等。
   (2)采用先进的多媒体教学手段,充分利用算法演示动画软件,通过讨论式教学方式,增强教学的感性与理性学习效果,培养学生的自主学习兴趣,提高课堂学习效率。
   (3)强化课程设计,通过分组、讨论、设计和报告撰写等多个环节的实践,使学生对所学知识融会贯通,算法分析与设计能力明显提高。
   (4)结合湖南省程序设计大赛、大学生生数模竞赛的情况,设计教学案例,培养算法设计兴趣爱好者。
  

  
   四、实践教学的设计思想与效果
   本课程的实践性教学重点在于通过实践操作使学生了解和掌握抽象数据类型、数据结构和算法复杂度分析等方面必要的概念、原理和方法,使学生掌握设计基本的和常用的数据结构、学会对算法进行时间和空间复杂度分析,并为其他专业课程的学习打下基础。
    本课程的实践性教学包括以下几个主要内容:
   1)通过课堂、开放性实验、课程设计等三个环节,由授课教师、实验教师现场跟班指导,培养学生初步的数据逻辑结构分析、数据存储结构的分析与设计,算法设计等方面的能力,加强对经典算法的原理的理解和运用。
   2)指导教师动手设计典型算法的应用程序,并将完整程序给学生上机验证,使学生快速掌握算法设计的思想和方法,迅速进入有效学习状态。
   3)发现、遴选理论基础扎实、编程能力强、创新意识强烈的学生参加大学生数模竞赛和大学生程序设计大赛培训,参与教师的科研课题,进行软件项目开发的实战训练。
    这种实践性教学的新模式取得了良好的效果,我校学生积极参加全国大学生数模竞赛和湖南省大学生生程序设计大赛,屡次获得佳绩,为国内同类高校中表现最为突出者,形成了湖南第一师范学校大学生学科竞赛特色,激发了广大同学的学习热情和科研热情,也为课堂教学改革的进一步深入探索提供了可行途径。
 
 
   返回


版权所有©湖南第一师范学院 地 址:长沙市岳麓区枫林三路1015号 邮 编:410205
湘ICP备05000548号 湘教QS1-200505-000191
管理:现代教育技术与网络中心