数据结构课程总结
数据:能够被计算机识别、存储和加工处理的信息的载体。
数据元素:数据的基本单位,可以由若干个数据项组成。数据项是具有独立含义的最小标识单位。数据结构的定义:
逻辑结构:从逻辑结构上描述数据,独立于计算机。线性结构:一对一关系。线性结构:多对多关系。
存储结构:是逻辑结构用计算机语言的实现。顺序存储结构:如数组。链式存储结构:如链表。索引结构:索引表。散列存储结构:如散列表。
对数据的操作:定义在逻辑结构上,每种逻辑结构都有一个运算集合。常用的有:检索、插入、删除、更新、排序。
数据类型:是一个值的集合以及在这些值上定义的一组操作的总称。原子类型:简单类型,由语言提供。结构类型:由用户借助于描述机制定义,是导出类型。
程序设计的实质是对实际问题选择一种好的数据结构,设计一个好的算法。算法取决于数据结构。算法是一个自定义的计算过程,以一个或多个值输入,并以一个或多个值输出。
评价算法的好坏的因素:算法是正确的;执行算法的时间;执行算法的存储空间;算法易于理解、编码、调试。
时间复杂度:是某个算法的时间耗费,它是该算法所求解问题规模n的函数。渐近时间复杂度:是指当问题规模趋向无穷大时,该算法时间复杂度的数量级。评价一个算法的时间性能时,主要标准就是算法的渐近时间复杂度。
算法中语句的频度不仅与问题规模有关,还与输入实例中各元素的取值相关。
时间复杂度按数量级递增排列依次为:常数阶、对数阶、线性阶、线性对数阶、平方阶、立方阶、……k次方阶、指数阶。空间复杂度:是某个算法的空间耗费,它是该算法所求解问题规模n的函数。算法的时间复杂度和空间复杂度合称算法复杂度。
线性表是由n≥0个数据元素组成的有限序列。n=0是空表;非空表,只能有一个开始结点,有且只能有一个终端结点。
线性表上定义的基本运算:构造空表:Initlist;求表长:Listlength;取结点:GetNode;查找:LocateNode;插入:InsertList;删除:Delete。
顺序表是按线性表的逻辑结构次序依次存放在一组地址连续的存储单元中。在存储单元中的各元素的物理位置和逻辑结构中各结点相邻关系是一致的。地址计算:?
在顺序表中实现的基本运算:插入:平均移动结点次数为?;平均时间复杂度均为?。删除:平均移动结点次数为?;平均时间复杂度均为?。
线性表的链式存储结构中结点的逻辑次序和物理次序不一定相同,为了能正确表示结点间的逻辑关系,在存储每个结点值的同时,还存储了其后继结点的地址信息。这两部分信息组成链表中的结点结构。一个单链表由头指针的名字来命名。
单链表运算:建立单链表(头插法:生成的顺序与输入顺序相反。平均时间复杂度均为?。尾插法:平均时间复杂度均为?。加头结点的算法:对开始结点的操作无需特殊处理,统一了空表和非空表。查找(按序号:与查找位置有关,平均时间复杂度均为?。按值:与输入实例有关,平均时间复杂度均为。插入运算:p=GetNode;s-next=p-next;p-next=s;平均时间复杂度均为?,删除运算:平均时间复杂度均为?)
单循环链表是一种首尾相接的单链表,终端结点的指针域指向开始结点或头结点。链表终止条件是以指针等于头指针或尾指针。采用单循环链表在实用中多采用尾指针表示单循环链表。优点是查找头指针和尾指针的时间都是O?,不用遍历整个链表。
双链表就是双向链表,就是在单链表的每个结点里再增加一个指向其直接前趋的指针域prior,形成两条不同方向的链。由头指针head惟一确定。双链表也可以头尾相构成双循环链表。双链表上的插入和删除时间复杂度均为O?。
顺序表和链表的比较:
基于空间:顺序表的存储空间是静态分配,存储密度为1;适于线性表事先确定其大小时采用。链表的存储空间是动态分配,存储密度1;适于线性表长度变化大时采用。
基于时间:顺序表是随机存储结构,当线性表的操作主要是查找时,宜采用。以插入和删除操作为主的线性表宜采用链表做存储结构。若插入和删除主要发生在表的首尾两端,则宜采用尾指针表示的单循环链表。
栈是仅限制在表的一端进行插入和删除运算的线性表,称插入、删除这一端为栈顶,另一端称为栈底。表中无元素时为空栈。栈的修改是按后进先出的原则进行的,我们又称栈为LIFO表。通常栈有顺序栈和链栈两种存储结构。
栈的基本运算有六种:构造空栈:InitStack,判栈空:StackEmpty,判栈满:StackFull,进栈:Push,退栈:Pop,取栈顶元素:StackTop
在顺序栈中有“上溢”和“下溢”的现象。“上溢”是栈顶指针指出栈的外面是出错状态。“下溢”可以表示栈为空栈,因此用来作为控制转移的条件。
顺序栈中的基本操作有六种:构造空栈,判栈空,判栈满,进栈,退栈,取栈顶元素
链栈则没有上溢的限制,因此进栈不要判栈满。链栈不需要在头部附加头结点,只要有链表的头指针就可以了。链栈中的基本操作有五种:构造空栈,判栈空,进栈,退栈,取栈顶元素
队列是一种运算受限的线性表,插入在表的一端进行,而删除在表的另一端进行,允许删除的一端称为队头,允许插入的一端称为队尾,队列的操作原则是先进先出的,又称作FIFO表.队列也有顺序存储和链式存储两种存储结构。
队列的基本运算有六种:置空队:InitQueue,判队空:QueueEmpty,判队满:QueueFull,入队:EnQueue,出队:DeQueue,取队头元素:QueueFront
顺序队列的“假上溢”现象:由于头尾指针不断前移,超出向量空间。这时整个向量空间及队列是空的却产生了“上溢”现象。为了克服“假上溢”现象引入循环向量的概念,是把向量空间形成一个头尾相接的环形,这时队列称循环队列。
判定循环队列是空还是满,方法有三种:一种是另设一个布尔变量来判断;第二种是少用一个元素空间,入队时先测试%m=front)?满:空;第三种就是用一个计数器记录队列中的元素的总数。队列的链式存储结构称为链队列,一个链队列就是一个操作受限的单链表。为了便于在表尾进行插入的操作,在表尾增加一个尾指针,一个链队列就由一个头指针和一个尾指针唯一地确定。链队列不存在队满和上溢的问题。在链队列的出队算法中,要注意当原队中只有一个结点时,出队后要同进修改头尾指针并使队列变空。
串是零个或多个字符组成的有限序列。
概念空串:是指长度为零的串,也就是串中不包含任何字符。空白串:指串中包含一个或多个空格字符的串。在一个串中任意个连续字符组成的子序列称为该串的子串,包含子串的串就称为主串。子串在主串中的序号就是指子串在主串中首次出现的位置。空串是任意串的子串,任意串是自身的子串。
串分为两种:串常量在程序中只能引用不能改变;串变量的值可以改变。
串的基本运算有:求串长strlen,串复制strcpy,串联接strcat,串比较charcmp,字符定位strchr。串是特殊的线性表,所以串的存储结构与线性表的存储结构类似。串的顺序存储结构简称为顺序串。
顺序串又可按存储分配的不同分为:静态存储分配:直接用定长的字符数组来定义。优点是涉及串长的操作速度快,但不适合插入、操作。动态存储分配:是在定义串时不分配存储空间,需要使用时按所需串的长度分配存储单元。
串的链式存储就是用单链表的方式存储串值,串的这种链式存储结构简称为链串。链串与单链表的差异只是它的结点数据域为单个字符。为了解决“存储密度”低的状况,可以让一个结点存储多个字符,即结点的大小。
顺序串上子串定位的运算:又称串的“模式匹配”或“串匹配”,是在主串中查找出子串出现的位置。在串匹配中,将主串称为目标,子串称为模式。这是比较容易理解的,串匹配问题就是找出给定模式串P在给定目标串T中首次出现的有效位移或者是全部有效位移。最坏的情况下时间复杂度是Om),假如m与n同阶的话则它是O。链串上的子串定位运算位移是结点地址而不是整数。
数组一般用顺序存储的方式表示。
存储的方式有:行优先顺序,也就是把数组逐行依次排列。PASCAL、C。列优先顺序,就是把数组逐列依次排列。FORTRAN地址的计算方法:按行优先顺序排列的数组:LOC(a)=?.。按列优先顺序排列的数组:LOC(a)=?.矩阵的压缩存储:为多个相同的非零元素分配一个存储空间;对零元素不分配空间。
特殊矩阵的概念:所谓特殊矩阵是指非零元素或零元素分布有一定规律的矩阵。
稀疏矩阵的概念:一个矩阵中若其非零元素的个数远远小于零元素的个数,则该矩阵称为稀疏矩阵。特殊矩阵的类型:对称矩阵:三角矩阵:上三角阵,下三角阵,对角矩阵k=f(I,j),
广义表是n个元素的有限序列,其中的元素是原子或者是一个广义表。广义表表头和表尾的概念:广义表有两种表示法,一种是括号表示法,一种是图形表示法。
广义表有两个特殊的基本运算:取表头head:取表中的第一个数据元素,不能对空表操作。取表尾tail;取除表头外,其余数据元素构成的子表,不能对空表操作
树是n个结点的有限集合,非空时必须满足:只有一个称为根的结点;其余结点形成m个不相交的子集,并称根的子树。根是开始结点;结点的子树数称度;度为0的结点称叶子;度不为0的结点称分支结点;除根外的分支结点称内部结点;
有序树是子树有左,右之分的树;无序树是子树没有左,右之分的树;森林是m个互不相交的树的集合;树的四种不同表示方法:树形表示法;嵌套集合表示法;凹入表示法;广义表表示法。
二叉树的定义:是n≥0个结点的有限集,它是空集或由一个根结点及两棵互不相交的分别称作这个根的左子树和右子树的二叉树组成。二叉树不是树的特殊情形,与度数为2的有序树不同。二叉树的4个重要性质:
二叉树的顺序存储结构就是把二叉树的所有结点按照层次顺序存储到连续的存储单元中。
树的存储结构多用的是链式存储。二叉树的链式存储结构,称为二叉链表。它就是由根指针root唯一确定的。共有2n个指针域,n+1个空指针。
根据结点的次序不同可得三种遍历:先序遍历,中序遍历、后序遍历。时间复杂度为。
利用二叉链表中的n+1个空指针域来存放指向某种遍历次序下的前趋结点和后继结点的指针,这些附加的指针就称为“线索”,加上线索的二叉链表就称为线索链表。线索使得查找中序前趋和中序后继变得简单有效,但对于查找指定结点的前序前趋和后序后继并没有什么作用。
树和森林及二叉树的转换是唯一对应的。二叉树变树:结点的右孩子与其双亲连。森林变二叉树:树变二叉树,各个树的根相连。转换方法?
树的存储结构:有双亲链表表示法:孩子链表表示法:双亲孩子链表表示法:孩子兄弟链表表示法:树的前序遍历与相对应的二叉树的前序遍历一致;树的后序遍历与相对应的二叉树的中序遍历一致。树的带权路径长度?最优二叉树?完全二叉树?哈夫曼树及其性质,
变长编码技术可以使频度高的字符编码短,而频度低的字符编码长,但是变长编码可能使解码产生二义性。如00、01、0001这三个码无法在解码时确定是哪一个,所以要求在字符编码时任一字符的编码都不是其他字符编码的前缀,这种码称为前缀码。哈夫曼树的应用。
图的逻辑结构特征就是其结点的前趋和后继的个数都是没有限制的,即任意两个结点之间之间都可能相关。图,有向图,无向图,简单路径,简单回路,网络等及其性质。
图的存储结构:邻接矩阵表示法:适合稠密图。无向邻接矩阵是对称的。有向行是出度,列是入度。建立邻接矩阵算法的时间是O,其时间复杂度为O。邻接表表示法:适合稀疏图。时间复杂度为O,空间复杂度为O。
图的遍历:深度优先遍历:借助于邻接矩阵的列。使用栈保存已结点。广度优先遍历:借助于邻接矩阵的行。使用队列保存已结点。
生成树的定义:最小生成树:Prim算法的时间复杂度为O与边数无关适于稠密图。Kruskal算法的时间复杂度为O,主要取决于边数,较适合于稀疏图。
最短路径的算法:Dijkstra算法,时间复杂度为O。
拓扑排序:无前趋的顶点优先:每次输出一个无前趋的结点并删去此结点及其出边,最后得到的序列即拓扑序列。无后继的结点优先:每次输出一个无后继的结点并删去此结点及其入边,最后得到的序列是逆拓扑序列。
关于排序
关键字项,关键字。
排序是使文件中的记录按关键字递增次序排列起来。
基本操作:比较关键字大小;改变指向记录的指针或移动记录。
存储结构:顺序结构、链表结构、索引结构。经过排序后这些具有相同关键字的记录之间的相对次序保持不变,则称这种排序方法是稳定的,否则排序算法是不稳定的。
排序过程中不涉及数据的内、外存交换则称之为“内部排序”,反之,若存在数据的内外存交换,则称之为外排序。内部排序方法可分五类:插入排序、选择排序、交换排序、归并排序和分配排序。
评价排序算法好坏的标准主要有两条:执行时间和所需的辅助空间,另外算法的复杂程序也是要考虑的一个因素。
插入排序:直接插入排序;逐个向前插入到合适位置;哨兵有两个作用;作为临变量存放R[i];是在查找循环中用来监视下标变量j是否越界;直接插入排序是稳定排序。时间复杂度为O?比较次数为/2;移动次数为?。希尔排序:等间隔的数据比较并按要求顺序排列,最后间隔为1;希尔排序是就地的不稳定排序。时间复杂度为O,比较次数为;移动次数为;
交换排序:冒泡排序:自下向上确定最轻的一个。自上向下确定最重的一个。冒泡排序是就地的稳定排序。时间复杂度为O?比较次数为?;移动次数为?;快速排序:以第一个元素为参考基准,设定、动两个指针,发生交换后指针交换位置,直到指针重合。重复直到排序完成。快速排序是不稳定排序。时间复杂度为O?比较次数为?。
选择排序:直接选择排序;选择最小的放在比较区前;直接选择排序不稳定排序。时间复杂度为O?。比较次数为?。堆排序:建堆:按层次将数据填入完全二叉树,从int处向前逐个调整位置。然后将树根与最后一个叶子交换值并断开与树的连接并重建堆,直到全断开。堆排序是就地不稳定的排序,时间复杂度为O,不适宜于记录数较少的文件。
归并排序:先两个一组排序,形成/2组,再将两组并一组,直到剩下一组为止。归并排序是非稳定排序,时间复杂度是O?基数排序:从低位到高位依次对关键字进行箱排序。基数排序是非就稳定的排序,时间复杂度是O?。各种排序方法的比较和选择:
1、待排序的记录数目n;n较大的要用时间复杂度为O的排序方法;
2、记录的大小;记录大最好用链表作为存储结构,而快速排序和堆排序在链表上难于实现;3、关键字的结构及其初始状态;4、对稳定性的要求;5、语言工具的条件;
6、存储结构;时间和辅助空间复杂度。关于查找
查找的同时对表做修改操作则相应的表称之为动态查找表,否则称之为静态查找表。衡量查找算法效率优劣的标准是在查找过程中对关键字需要执行的平均比较次数。线性表查找的方法:顺序查找:逐个查找,ASL=?;二分查找:取中点int比较,若小就比左区间,大就比右区间。用二叉判定树表示。ASL=?;分块查找:要求“分块有序”,将表分成若干块内部不一定有序,并抽取各块中的最大关键字及其位置建立有序索引表。
二叉排序树定义是二叉排序树是空树或者满足如下性质的二叉树:若它的左子树非空,则左子树上所有结点的值均小于根结点的值;若它的右子树非空,则右子树上所有结点的值均大于根结点的值;左、右子树本身又是一棵二叉排序树。
二叉排序树的插入、建立、删除的算法平均时间性能是O?。
二叉排序树的删除操作可分三种情况进行处理:*P是叶子,则直接删除*P,即将*P的双亲*parent中指向*P的指针域置空即可。*P只有一个孩子*child,此时只需将*child和*p的双亲直接连接就可删去*p。*p有两个孩子,则先将*p结点的中序后继结点的数据到*p,删除中序后继结点。
关于B-树。它适合在磁盘等直接存取设备上组织动态的查找表,是一种外查找算法。建立的方式是从下向上拱起。
散列技术:将结点按其关键字的散列地址存储到散列表的过程称为散列。散列函数的选择有两条标准:简单和均匀。常见的散列函数构的造方法:平方取中法,除余法,相乘取整法,随机数法。
处理冲突的方法:开放定址法:一般形式为?,开放定址法要求散列表的装填因子α≤1。开放定址法类型:线性探查法,二次探查法,双重散列法。拉链法:是将所有关键字为同义词的结点在同一个单链表中。
拉链法的优点:拉链法处理冲突简单,且无堆积现象;链表上的结点空间是动态申请的适于无法确定表长的情况;拉链法中α可以大于1,结点较大时其指针域可忽略,因此节省空间;拉链法构造的散列表删除结点易实现。
拉链法也有缺点:当结点规模较小时,用拉链法中的指针域也要占用额外空间,还是开放定址法省空间。
扩展阅读:“数据结构”课程总结
“数据结构”课程总结
计算机科学与技术专业从1994年开始为我校专科生开设“数据结构”课程,201*年开始为本科生开设这门课程。由于本门课程的教学从教材、讲授、实验指导都体现了先进的教育理念,该课程的教学体系科学、完整,教学手段与方法先进,课程特色鲜明,201*年被评为赤峰学院本科层次精品课。几年来,数据结构课题组成员从以下几个方面对本门课程进行了建设和改革。一、课程建设指导思想、定位和特色1.学科地位
“数据结构”是计算机科学与技术专业的一门学科基础课,是本专业和相关专业必修课。本课程的教学目标是培养学生通过理解、分析和研究计算机处理的数据对象的特性,从而选择适当的数据结构、存储结构和相应的算法,并熟练掌握算法的时间分析和空间分析技巧。“数据结构”还是计算机科学与技术专业部分专业课的先导课,如“数据库原理与应用”、“计算机操作系统”、“计算机编译原理”和“面向对象的程序设计”等。所以本课程的教学效果将直接影响到学生对其它后续专业课的学习,因此,该课程在专业建设的地位十分重要。
“数据结构”是一门应用性很强的课程,本课程要求学生在掌握各种数据结构,特别是存储结构和有关算法的基础上,通过大量的上机实例把难以理解的、抽象的概念转化为计算机能够正确运行的程序,从而提高学生运用所学知识解决实际问题的能力。2.课程特色
根据课程建设的规划和我系实际,我们针对《数据结构》课程教学开展讨论,并就实验、图书资料等方面进行建设。在不断的教学实践中,我们按照精品课建设要求,积极探索,积累了丰富的教学经验。
采用国内经典教材,结合前沿的研究领域和最新科研动态,丰富教学内容,让学生了解数据结构的实际应用价值。
采用课堂教学与大作业相结合,上机实践为补充的教学模式,培养学生的创业创新素质和团队协作精神。二、教师队伍建设
1.良好的学缘结构
任课教师的业务水平和教学水平是影响课程建设质量的重要因素。为此,我们不断加强师资队伍建设,特别注重青年教师和实验指导教师的培养。在担任该课程教学任务的5名教师中,教授1名、副教授2名、讲师2名,学历结构为硕士4人、学士1人,45岁以下3人,35岁以下2人。本教师梯队学历层次较高,职称、年龄结构合理,便于本门课程的建设和发展。
2.加强学术交流,不断提高团队整体教学和科研水平
在教学过程中,我们采取了互相听课,举行公开课、观摩课等方式,经常交流教书育人和教学改革方面的经验,不断提高任课教师的教学水平和学术水平。
以范体贵教授为学科带头人的教学研究梯队,具有丰富的教学经验和高昂的教学热情,同时具备较高的教学研究和科学研究水平。教学梯队成员在搞好教学的同时,积极申报承担各级各类教学研究和科学研究课题,并参加国内外相关学科的科研、教学等方面的学术交流活动。选派范体贵、门爱华两位老师参加全国计算机年会和全国数据库学术会议,与国内其他高校著名学者进行了教学、科研等方面的交流,学到许多宝贵的经验和方法。
注重与其他高校的合作和交流,学习其他院校好的教学经验和方法。选派主讲教师门爱华老师到清华大学计算机系做访问学者,访学期间门老师听取了本课程的讲授,经常与讲授本门课程的资深教授严蔚敏老师、殷仁昆老师进行交流、学习。二位老师都给予了具体的指导和建议,为我校本门课程的改革和发展提供了有利的帮助。请国内著名高校学者来我系讲学传授经验,在教学、科研等方面给予具体的指导。201*年10月清华大学著名数据库专家冯建华教授来我系讲学,课题组成员与冯教授进行了深入的交流,在教学和科研方面都有很大的收获。
3.开展科学研究,积极申请科研立项
数据结构课题小组成员积极进行相关领域的科学研究,几年来发表相关论文30余篇,承担自治区级科研项目四个,赤峰市科技局科研项目一个,院级项目一个,其中3个项目已经完成并通过验收。目前在研的一个科研项目是与清华大学合作申请的计算机前沿领域研究课题,相信通过该项目的研究和合作,对我系的科研工作会起到极大的促进作用,同时能够使我系科研水平上一个新的台阶。课题组成员经过几年的努力,在各方面都取得了一些成绩。范体贵、门爱华、张国祥、王玉红四位教师分别获得“赤峰学院课堂教学质量优秀奖”,范体贵、门爱华两位教师多次获得“赤峰学院科研成果优秀奖”的奖励。王玉红老师获得“毕业实习优秀指导教师“称号,门爱华老师201*年、201*年连续获得“毕业论文优秀指导教师”奖励。
建立了良好的人才培养制度,在学校和系里的大力支持下,鼓励现有教师提高学历与引进高学历教师相结合,经过几年的建设,已经形成了一支以中青年为主的学科梯队。积极鼓励中青年教师到国内名校进修或攻读硕士、博士学位,门爱华、董洁、王玉红分别考取了东北大学和辽宁工程技术大学的硕士研究生,已圆满完成学业并获得硕士学位。三、教学内容、教材建设
1.理论环节教学内容及学时分配
“数据结构”是计算机科学课程体系中核心课程之首,作为学科的专业基础课,具有承上启下的重要作用。对应于学科中问题求解的理论、抽象和设计的方法论,本课程内容体系结构分为概念表述、构建数据模型、设计算法三个层面,突出数据组织方法与处理技术,贯穿程序设计和软件工程新思想和新观点。理论学时设置为72学时。
2.实践环节教学内容及学时分配
上机实践和课程设计重在培养学生软件设计的综合能力。在基本的课程实习基础上,自201*年起开设了数据结构课程设计,使课程的实践环节总学时数增加到60学时。提出了课程设计的规范要求,突出关键技术要点,贯穿基本技能训练主线,加强实践能力培养。
通过课程设计的训练,突出构造性思维训练的特征,提高了学生组织数据与进行编写大型程序能力,使学生更好地理解和掌握了算法设计所需的技术,为专业学习打下良好的基础。课程设计题目(动态更新、完善):航空客运订票系统;电梯模拟;简单行编辑程序;工资管理系统;医院排队看病活动的模拟;学籍管理系统;图书管理系统等。3.教材建设
教材建设是课程建设的重要环节。为此,根据教学大纲和本课程的发展需要,在本课程教材的选用上注重教材的先进性和科学性,我们选用了清华大学出版社严蔚敏教授等编写的《数据结构》(C语言版)作为教材,本书内容丰富、体系结构严谨、概念清晰、易学易懂,也是多所院校指定的考研参考教材,完全适合我系计算机科学与技术、信息与计算科学专业学生的需要。任课教师则多方面参考相关教材,选择部分编写精彩的内容充实到教案中。任课教师们广泛阅读相关文献,了解该领域前沿知识,并且在授课过程中介绍给学生,以开阔学生的视野,拓宽学生的知识面。同时,根据教材内容和实际教学要求,编写了《数据结构上机指导与习题就解答》,并正式出版了《数据结构实验教程》一书,该书作为自治区教育厅统编教材已在各高校广泛使用。四、教学方法和教学手段
1.教学方法
在教学方法上,讲课、讨论和专题讲座等多种形式并用,以科学、生动灵活的讲授方式传授知识,培养学生的创造思维。教师在认真组织课堂讲授,注意各环节正常运行的同时,还针对不同的教学内容采取不同的方法进行讲解,做到课程内容既条理清晰、深入浅出,又重点突出、特色鲜明。教学内容灵活,既有必讲的内容,也有针对不同专业需要和特点选讲的内容。
通过布置适量的课后习题,使学生能够进一步巩固和提高对课上所学知识的领悟和应用能力。我们在选择习题时,一方面注重三基(基本理论,基本方法,基本技能)知识的掌握,另一方面也充分考虑知识的灵活应用,使学生能多角度、多方法地解决问题,既锻炼他们的系统性思维,又提高分析解决问题的能力。每两周安排一次习题课,由指导教师集中解决同学课上课下遇到的问题。
上机实践是学生对本门课程所学知识的一种全面、综合的能力训练,是与课堂听讲、自学和练习相辅相成必不可少的一个教学环节,也是对课堂教学效果的一种检验。通常,实习题中的问题比平时的习题复杂得多,也更接近实际。实习题注重原理与应用的结合,目的让学生学会如何把书上学到的知识运用于解决实际问题的过程中去,培养从事软件开发设计工作所必需的基本技能。同时,通过实践能使书上的知识变“活”,起到深化理解和灵活掌握教学内容的作用。平时的练习较偏重于如何编写功能单一的“小”算法,而实习题是软件设计的综合训练,包括问题分析,总体结构设计,用户界面设计,程序设计基本技能和技巧,可以多人合作,有利于一整套软件工程规范的训练和科学作风的培养。此外,实践环节中有很重要的一点,就是机器是比任何教师都严格的主考官。
2.教学手段
为了适应现代化教学的需求,我们在传统教学的基础上,充分利用现代科学技术,广泛应用多媒体教学课件和教学软件。将授课内容制作成了图文并茂的多媒体课件,利用多媒体技术对数据结构辅之以形象的动画,动态演示抽象的复杂数据结构的变化,用板书补充某些推导过程并完成和学生互动的内容,改变了以前课堂教学单调的弊病,激发了学生的学习兴趣。使用多媒体技术还可以直接在课堂上演示算法的实现过程,让学生熟悉算法实现的环境和方法,增强了该门课的实践性,提高了课堂授课效率和教学质量,取得了满意的教学效果。教师们为了更好地适应社会的发展和改革的需要,本着强化算法的思想,在现有数据结构内容的基础上,补充了新的算法,拓宽了学生的知识面。五、课程建设取得的成果
1.教学科研论文
1)TheBoundaryElementAnalysisforTheThermalConductionofTheThermalEquipment。ProceedingsofInternationalConferenceonComputationalPhysics,RintonPress,US,(201*)199-202(SCI)
2)基于访问控制列表的路由器防火墙在网络安全中的应用研究。计算机与网络24,(201*)52-53(核刊)
3)信息系统在企业现代化管理中的应用。《商场现代化(学术版)》,201*.225-26(核刊)
4)可信网络基本概念与基本属性研究。《赤峰学院学报》201*.5
5)基于包过滤技术路由器防火墙在网络安全中的研究。《计算机应用研
究》,201*,vol23
6)ResearchonTheArchitectureofTru-Network。201*International
SymposiumonInformationscienceandEngineering
7)路由器防火墙对冲击波、震荡波病毒的过滤研究。《赤峰学院学报》201*.1
67-68
8)菲涅耳圆孔衍射的数值模拟。《赤峰学院学报》201*.9)复杂轴承流体动力学特性的边界元分析。《润滑与密封》201*.3(核刊EI
核心刊源)
10)三叶轴承流体动力学特性的边界元分析。《润滑与密封》201*.5(核刊EI
核心刊源)
11)164-182Hf核的低能谱和电磁跃迁的相互作用玻色子模型。《高能物理与核
物理》28(12),(201*)119-122(核刊,SCI收录)
12)基于访问控制列表的路由器防火墙在网络安全中的应用研究。《计算机与网
络》201*.24
13)赤峰学院校园网路由器、交换机的选型及远程登录。《赤峰教育学院学报》
201*.581-82
14)《XML数据库存储策略综述》《计算机科学》201*年9月(核刊)15)《XML数据库结构连接算法之研究》《计算机科学》201*年6月(核刊)16)《XML中XPath包含关系判定算法》《内蒙古大学学报》201*年10月(核刊)17)《基于关系数据库的XML数据的存储研究》《赤峰学院学报》201*年3月18)《XML数据库模式匹配算法研究》《赤峰学院学报》201*年5月19)《Internet蠕虫的分析与研究》《赤峰学院学报》201*年4月20)《如何防止外部网络的攻击》《赤峰学院学报》201*年2月21)《射频IC卡消费系统的设计与实现》《赤峰学院学报》201*年10月22)《XPath片断的分析与研究》《赤峰学院学报》201*年1月23)《一种基于层次结构的XML编码技术》中国教育信息化》201*年4月(核刊)24)《VC++实现图形、数据库应用系统的思路》赤峰教育学院学报201*年第2月25)《基于IP组播的多媒体会议系统的设计》赤峰教育学院学报201*年6月26)论文《个性化WINDOWS系统“开始”菜单》赤峰教育学院学报201*年4月27)浅谈DEBUG程序的主要命令用法赤峰学院学报201*年5月28)powerpoint技巧在课件制作中的妙用赤峰学院学报201*年1月29)浅谈用MASM运行汇编程序赤峰学院学报201*年1月30)XML数字签名浅析赤峰学院学报201*年5月31)《网络层的静态路由选择综述》赤峰学院学报201*年3月32)《离散数学在计算机教学中的作业》赤峰学院学报201*年1月33)《基于模拟退火算法的油井工矿数据挖掘的应用研究》
赤峰学院学报201*年1月
2.教研课题
1)赤峰学院校园网项目赤峰学院201*年-201*年(已验收)2)基于IP网QOS动态控制研究内蒙教育厅201*年-201*年(已结题)3)基于结构索引XML模式匹配方法研究内蒙教育厅201*年201*年(已结题)4)XML数据库研究赤峰学院201*年201*年(已结题)5)CAI系统中知识个性化组织与导航研究内蒙教育厅201*年-201*年(已结题)6)XML安全数据发布关键问题研究内蒙教育厅201*年201*年(在研)3.教学获奖
1)范体贵、门爱华、张国祥、王玉红分别获赤峰学院201*、201*年、201*年、201*年“课堂教学质量优秀奖”;
2)门爱华201*年、201*年连续获的“毕业论文优秀指导教师”奖励;3)王玉红201*年获院级“毕业实习优秀实习指导教师”奖励;
4)201*年《数据结构课程教学和实践》课题”获赤峰学院“优秀教学成果二等奖”。
数据结构课程组201*年5月14日
友情提示:本文中关于《数据结构课程总结》给出的范例仅供您参考拓展思维使用,数据结构课程总结:该篇文章建议您自主创作。
来源:网络整理 免责声明:本文仅限学习分享,如产生版权问题,请联系我们及时删除。
《数据结构课程总结》
由互联网用户整理提供,转载分享请保留原作者信息,谢谢!
http://m.bsmz.net/gongwen/727344.html
- 上一篇:水利重点工作汇报
- 下一篇:通信软件设计心得体会