“数据结构与算法”课程学习总结报告内容要求

2024-08-05

“数据结构与算法”课程学习总结报告内容要求(共11篇)

篇1:“数据结构与算法”课程学习总结报告内容要求

“数据结构与算法”课程学习总结报告内容要求

1、根据“数据结构与算法”教学大纲中各章“知识点”总结学习内容。

2、根据“数据结构与算法”教学大纲中各章“知识点”的要求,总结和分析本人对各知识点掌握的情况(逐知识点进行)。

3、学习“数据结构与算法”课程的学习体会。

4、对“数据结构与算法”课程教学的建议。

5、文档格式为A4纸、页边距上下2.54cm,左右3.17cm、宋体、5号字、一级标题加粗、单倍行距;

篇2:“数据结构与算法”课程学习总结报告内容要求

1004012033 陈孝婕 10计本3 “数据结构与算法”这门课程对于计算机科学与技术系的学生来说是非常重要的课程。这门课程主要包括十个章节。

一.每章主要知识点总结和个人掌握情况

第一章主要要求学生掌握数据、数据类型、数据结构、算法及算法分析等基本概念和基础知识。另外,第一章结合课程学习要求,复习和掌握算法描述工具--C语言中的指针类型与指针变量、结构类型与结构变量、函数与参数、递归定义和递归函数、动态存储分配、文件操作、程序测试和测试集、测试数据的设计和程序调试等问题。

从这一章中我不仅学到了数据结构的基本概念和基础知识,了解到什么是数据结构,我们为什么要学习数据结构这门课程。而且复习了大一下学期所学的C语言程序课程设计中的算基本法语句。有利于数据结构与算法后面课程的学习。

第二章主要学习顺序表(包括顺序串)数据类型、数据结构、基本算法及相关应用。知识点包括顺序表的概念、数据结构定义、数据类型描述、基本算法的实现及其性能的分析等知识;还有“查找”和“排序”的概念,“查找”包括3种查找方式:简单顺序查找、二分查找、分块查找;“排序”包括直接插入排序、希尔排序、冒泡排序、快速排序、直接选择排序和归并排序(重点为二路归并排序)6种排序方式;掌握应用顺序表来进行查找和排序的各类算法以及不同的查找和排序算法间的性能差异。在此基础上,理解顺序串的相关应用。

从这一章中我学习到各种不同的查找方法和排序方式,其中二分查找作为重点查找方法我进行了重点学习,熟悉并熟练地运用二分查找并且了解到各种排序方法适合于不同的顺序表。对于顺序串的学习,我主要掌握了字符串的基本运算,包括:求串长strlen(S)、连接stract(ST1,ST2)、求子串substr(S,i,j)、比较串的大小strcmp(S,T)、插入insert(S1,i,S2)、删除delete(S,i,j)、子串定位index(S1,S2)、置换(replace(S1,i,j,S2)、replace(S,T,V)两种)。

第三章主要学习链表(单聊表、循环链表)的概念、数据结构、数据类型描述、基本算法以及链表相关应用。需要掌握各种链表的概念、数据结构定义、基本算法实现以及算法的性能分析等知识,掌握链表的相关应用方法,在此基础上掌握链串的相关知识。

通过这一章我学习了另一种数据结构——链表,在逻辑结构上,链表与顺序表一样,也是线性逻辑结构;单链表借助“地址”的概念,使用了链式存储结构,产生了一种新的数据结构——链表,链表的基本操作是地址运算,在此基础上构成的链表基本算法的特点也就不同,从链表算法的功能看,链表的基本运算与顺序表基本相同,但实现方法和过程与顺序表是不同的,链表可分为静态链表和动态链表两种。这一章我学习到的实际应用是链表的创建、插入和删除等基本操作。循环链表的建立和查询方法。

第四章主要知识点是在两种不同的存储结构下设计的堆栈,即顺序栈和链栈。主要内容是顺序栈和链栈的概念、数据类型、数据结构定义和基本运算算法及其性能分析。通过对本章的学习,要求掌握顺序栈及链栈的数据类型描述、数据结构、基本算法及其性能分析等知识。在此基础上,了解堆栈的相关应用,掌握应用堆栈解决实际问题的思想及方法。

通过对这一章的学习,我了解了堆栈的概念,堆栈的原理、创建方法以及使用方式。“后进先出”是其基本原则。利用堆栈可以轻松方便的解决对称问题以及括号匹配等问题。堆栈与顺序表、链表不同的是,堆栈只能对一端的数据元素进行操作,即只在栈顶进行元素的插入和删除。掌握顺序栈和链表的存储结构是学习堆栈的要素之一。堆栈是一类常用的数据结构,被广泛应用于各种程序设计中。

第五章的重点知识是在顺序存储和链接存储下的两种队列——顺序(循环)队列和链队

列的数据结构、基本运算及其性能分析以及应用。通过本章的学习,要求掌握顺序队列(重点是循环队列)及链队列的概念、数据类型描述、数据结构、基本算法及其性能分析等知识。在此基础上,了解队列的相关应用,掌握应用队列来解决实际问题的思想及方法。

通过这一章的学习,我掌握了队列的定义,概念,创建以及“对头删除”,“队尾插入”的原则。重点了解了判断循环队列空和满的判断条件。同堆栈一样,队列也是一种具有线性逻辑结构、运算受限制的数据结构。与堆栈只在一端(栈顶)进行元素的插入和删除运算不同的是,队列是在对头进行插入,而在队尾完成数据元素的删除,所以队列的算法和适用的应用问题与堆栈有很大的区别。队列作为一类常用的数据结构,被广泛应用于各种程序设计中。

第六章主要学习数组、系数矩阵和广义表的基本概念、集中特殊矩阵的存储结构及基本运算,在此基础上学习特殊矩阵的计算算法与广义表应用等相关问题。通过本章的学习,要求掌握特殊矩阵的压缩存储结构,在该存储结构下元素的定位方法,理解稀疏矩阵的计算和广义表的存储结构及其基本运算。了解矩阵与广义表的相关应用。

通过这章的学习和前几章的比较,我了解到前几章的线性结构中的数据元素都是非结构的原子类型,即每一个元素都是不可再分解的。本章讨论的数组和广义表等数据结构可以看成是在前几章线性结构基础上的一个扩展:组成该数据结构的数据元素本身也是一个数据结构。矩阵计算应该数值计算方面的问题,由于矩阵和数组的关系以及特殊矩阵存储结构的复杂性,进而使得特殊矩阵的存储结构和算法也表现出其特殊性,所以数据机构课程应该解决其计算问题。

第七章的学习重点是二叉树的概念、数据类型、数据结构定义和各种基本算法,在此基础上介绍二叉树的一些应用问题。通过本章的学习,我掌握了二叉树概念及其性质、二叉树的逻辑结构和存储结构等知识,掌握二叉树的建立、遍历、线索化等基本概念和算法及性能分析,能熟练应用二叉树这章结构来解决一些实际问题,如哈夫曼树及哈夫曼编码、查找与排序(二叉树排序)等问题。了解堆栈排序及其算法等知识。二叉树是非线性数据结构,是树形结构的一种特殊形式。在现实生活有许多数据关系可抽象为树或二叉树的形式。本章中的二叉树的概念及其性质、二叉排序树、存储结构、遍线索(化)、基本算法为重点内容,二叉排序树的应用为难点内容。

第八章的学习重点是树和森林的数据结构、基本算法及其性能分析,树和森林与二叉树间的转化算法等,在此基础上介绍树的应用——B-树。通过本章的学习,我掌握了树和森林的概念和性质、数据结构、树的基本算法及性能分析、树与二叉树间的转换及其算法,并能应用B-树来实现数据元素的动态查找。舒适一种非线性结构,它在二叉树的基础上做了更为一般化的扩展,而森林是树的集合。在树结构中,每一个元素最多只有一个前驱,但可能有多个后继。现实生活中的家族关系、单位的组成结构等,均可抽象为树的形式。

第九章学习重点是散列结构的相关知识,学习常用的散列函数和冲突处理方法,散列表的常用算法及其性能分析,通过本章的学习,我掌握了散列结构和散列函数的相关概念,掌握散列结构的存储(散列表)的相关概念,要求掌握散列冲突处理方法(散列法)的相关知识,并能灵活运用散列法解决应用问题。

散列结构是使用散列函数建立数据结点关键字与存储地址之间的对应关系并提供多种当数据节点存储地址发生“冲突”时的处理方法而建立的一种数据结构。散列结构的查找等运算效率是很高的,本章中的散列函数、散列结构、散列表、散列法的基本概念和基本算法是重点,线性探测散列算法、链地址法散列算法和散列法的应用是难点。

第十章的学习重点是图的定义及性质,图的四种存储结构,图的两种遍历算法以及图的典型应用,包括最小生成树、最短路径、拓扑排序和关键路径等。通过本章学习,我掌握了图的概念和基本性质,图的存储结构(邻接矩阵和邻接表)及其基本算法、图的遍历及算法、图的最小生成树普利姆算法或者克鲁斯卡尔算法、图的最短路径迪杰斯特拉算法和弗洛伊德算法、有向无环图拓扑排序算法。了解了图的逆邻接表、十字链表、邻接多重表存储结构及其基本算法、关键路径求解算法,并能灵活运用图的不同的数据结构和遍历算法解决复杂的应用问题。

二.课程学习体会

在学习开始的时候,老师就明确提出它不是一种计算机语言,不会介绍C语言的变成语言,而是通过学习可以设计出良好的算法,高效地组织数据。一个程序无论采用何种语言,其基本算法思想不会改变。联系到在大一和大二上学期学习的C和C++语言,我深刻认识到了这一点。“软件开发好比写作文,计算机语言提供了许多华丽的辞藻,而数据结构则考虑如何将这些辞藻组织成一篇优秀的文章来。”在学习这门课中,要熟悉对算法思想的一些描述手段,包括文字描述、图形描述和计算机语言描述等。因此,计算机语言基础是必须的,因为它提供了一种重要的算法思想描述手段——机器可识别的描述。

这门课结束之后,我总结了学习中遇到的一些问题,最为突出的,书本上的知识与老师的讲解都比较容易理解,但是当自己采用刚学的知识点编写程序时却感到十分棘手,有时表现在想不到适合题意的算法,有时表现在算法想出来后,只能将书本上原有的程序段誊写到自己的程序中再加以必要的连接以完成程序的编写。针对这一情况,我会严格要求自己,熟练掌握算法思想,尽量独立完成程序的编写与修改工作,只有这样,才能够提高运用知识,解决问题的能力。

三.对《数据结构与算法》课程教学的建议

1、建议在上课过程中加大随堂练习的分量,以便学生能当堂消化课堂上学习的知识,也便于及时了解学生对知识点的掌握情况,同时有助于学生上课积极思考,不会开小差。

2、建议在课时允许的情况下,增加习题课的分量,通过课堂的习题讲解,加深对知识点的掌握,同时对各知识点的运用有一个更为直观和具体的认识。

篇3:“数据结构与算法”课程学习总结报告内容要求

关键词:数据结构,算法,C程序设计,计算机教学

1、引言

“算法与数据结构”是计算机科学与技术、软件工程、网络工程等相关专业的一门专业基础课,也是这些专业课程体系中的核心课程以及四门考研课程之一。在计算机科学与技术专业的课程体系中,“算法与数据结构”课程具有承上启下的重要作用,它不仅是一般程序设计的基础,也是开发操作系统、数据库系统、中间件和应用程序的基础;其教学内容不但巩固了已修的“C程序设计”、“离散数学”、“计算机导论”等课程所学知识,还为“数据库系统原理”、“操作系统”、“编译原理”等后续课程的开设以及相关实验教学环节的顺利完成奠定基础。所以“算法与数据结构”课程的教学质量和学习效果直接影响学生对专业知识的掌握和理解程度,直接影响计算机专业人才的培养质量。因此,“算法与数据结构”课程的教学改革和建设具有非常重要的现实意义。

2、教学现状

2.1教学内容及目的

作为计算机科学与技术专业的一门重要基础课程,“算法与数据结构”主要讲授用计算机解决实际问题过程中所涉及到的各种数据的组织方法、存储结构,以及在各种结构上执行的插入、删除、查找等操作,目的在于培养学生的计算思维能力。主要教学内容包括:数据结构和算法设计与分析的基本知识,线性表、堆栈、队列、二叉树、树、图等各种基本数据结构的定义、存储结构,常用的排序、查找等非数值算法以及应用。

“算法与数据结构”课程的教学目的是使学生熟练地掌握各种数据的内在逻辑关系(逻辑结构)及其在存储器中的表示方法(存储结构),以及一些基本操作的算法实现,了解相关的概念、知识和算法的典型应用。通过这门课程的学习,使得学生在软件开发过程中能够根据待解决的问题或者求解的对象合理选择数据结构,进而设计算法和开发程序,并为学习“操作系统”、“数据库系统原理”等后续课程奠定基础。

2.2课程的特点和存在的问题

目前,“算法与数据结构”课程在专业教学中的基础性作用得到了国内外高校的广泛关注。从计算机专业的课程体系来讲,大一、大二年级普遍开设导论、C程序、离散数学等课程,大三、大四开设软件工程、数据库系统原理、操作系统、算法设计与分析、编译原理等。“算法与数据结构”作为专业的核心课程,一般在大二下学期开设,它依赖于前期的基础课程,又为后续专业课程的开设奠定基础,在低年级课程和高年级课程间起到衔接和过渡作用。它主要讲述数据的逻辑结构和存储结构及其插入、删除、查找、排序等操作和对应的算法;通过该课程的学习,将进一步提高学生的数据描述能力和程序设计能力。“算法与数据结构”课程内容多、概念多、方法多,教学内容抽象、逻辑性强,相应的实验环节要求较高,编程工作量大,许多概念需要通过上机编程序进行深入理解和巩固,这些特点决定了该门课程无论是教,还是学,都具有较大的难度。

在实际教学过程中,“算法与数据结构”是与其它课程相对独立,其教学内容的组织也过于独立,往往没有从课程体系的角度组织教学,导致其教学内容与其他相关课程脱节,系统性不强;教学过程中缺少与日常生活和工作密切相关的直观案例。这种教学方式使得数据结构这门抽象的课程变得更加乏味和枯燥,直接影响到学生的学习兴趣和学习效果,严重妨碍了学生专业知识的系统性建构,也不利于调动学生学习的积极性和主动性,切实影响到数据结构乃至计算机专业所有后续课程的教学效果。

此外,“算法与数据结构”对先修课程的依赖性较大,特别是程序设计课程。目前许多高校将“C程序设计”的授课学时普遍压缩到48课时,其中还包括实验上机环节,教学过程中往往没有足够的学时讲授指针、结构体和动态链表等教学内容。而“算法与数据结构”课程的学习必须以数组、指针、结构体、动态链表等知识为基础,要面对的是树的存储和遍历、图的存储、最小生成树、最短路径、拓扑排序、堆、基数排序等一些复杂算法,程序设计学习环节的薄弱给“算法与数据结构”课程教学及其实验环节的正常开设造成了很大困难。

3、“算法与数据结构”课程的教学改革

3.1立足课程体系,突出课程地位

“算法与数据结构”是计算机科学的基础,其课程内容在计算机科学相关领域的应用十分广泛。例如堆栈、散列表及树在编译系统中的使用;堆栈、队列、树等在操作系统中的使用;线性表、多链表及索引树等被数据库系统中采用进行数据管理;而目前流行的智能推荐和搜索、自动驾驶、深度学习、图像理解等领域,因求解问题性质和规模的差异涉及到不同的数据结构,如搜索树及各种有向图等。正是因为数据结构在各个领域中的广泛应用,奠定了其在计算机科学与技术专业中的核心地位,成为数据库、操作系统等高年级课程的先导课程,在专业课程体系中具有非常重要的地位。因此,在实际教学过程中应充分认识“算法与数据结构”课程的核心地位,把握好与其它课程间的关系和联系,注意与先修课程和后续课程的衔接,合理组织教学内容,确保本课程教学质量的同时为后续课程的顺利开设奠定基础。

3.2合理构建课程体系,加强实践环节,确保教学质量

“算法与数据结构”课程教学内容抽象,理论性强,学习内容不直观,难以理解和掌握。鉴于以上特点,通常采用上机实验通过编写程序来加深对各种数据结构的理解,特别是各种数据结构的存储结构以及操作方法。为了确保教学效果,我们构建了理论教学+课内实验+课程设计三位一体的多层次课程体系,在讲授理论教学内容的同时,强化实践教学上机环节,让学生一方面通过课堂教学学习新的理论知识和算法设计的精髓,另一方面通过不断地上机编程实验来深入理解理论教学内容,最后通过课程设计环节进一步提高综合运用程序设计、计算机导论、离散数学等课程所学知识,进而解决实际问题的能力。

在实践教学环节,构建了由基础性实验、综合设计性实验、课程设计组成的系列化、多层次实践教学体系。基础性实验要求学生将理论课上讲的抽象数据类型上机编程实现,进而深入理解抽象数据类型、算法设计和程序实现之间的关系;综合设计性实验是在基础性实验的基础上,给出题目,学生综合运用所学知识,自己设计数据结构、定义数据类型和存储结构,从而解决涉及多个知识点的综合性问题;课程设计则给出面向实际应用问题的一系列实践题目,如航班信息管理、个人信息查询、校园导游、文件加密解密等,由学生自己分析问题,确定算法,设计数据结构,并编程实现,从而锻炼学生综合运用“算法与数据结构”的相关知识解决实际问题的能力;课程设计以小组形式进行,小组成员可以相互探讨,要求每名学生完成问题分析、总体结构设计、用户界面设计、程序实现与测试的一系列过程,进而培养学生以小组(团队)形式协作开发大型软件的能力,培养学生的团队精神和合作意识;最后要求学生进行答辩和提交设计报告,从而锻炼学生的口头表达能力和写作能力,促进学生综合素质的提高。

3.3强化先修课程,确保教学效果

“算法与数据结构”课程包括理论和实践两部分教学内容。其中,理论教学部分需要学生很好地理解和掌握其先修课程中的一些关键知识和概念,如“离散数学”中的集合及其运算,“计算机导论”中的计算机组成,以及“C程序设计”中的数组、指针、函数、结构体、链表等。特别是“算法与数据结构”课程的实践上机教学环节大都采用C语言或者C++来编程完成,若程序设计的相关知识掌握不好将严重影响“算法与数据结构”课程的教学和学习。因此,在课程教学大纲的制定过程中,应认真梳理“算法与数据结构”课程所需要的基础知识,并反馈到其先修课程教学大纲的制定过程,最终落实到实际的教学过程中,以确保在“算法与数据结构”课程开课前学生已具备相应的基础知识。

4、结束语

“算法与数据结构”作为计算机科学与技术及其相关专业的一门核心课程,在专业课程体系中起到承上启下的重要作用,也是培养学生计算思维和程序设计能力的一门重要课程。为了确保“算法与数据结构”课程的教学质量和学习效果,应该充分认识到“算法与数据结构”在计算机专业课程体系中的地位和作用,认真梳理与先修课程和后续课程间的关系,注意课程间教学内容的衔接和过渡,加强“C程序设计”等先修课程的教学,特别是“C程序设计”中数组、指针、结构体、动态链表等教学内容;构建合理的实践教学体系,通过上机实验编程加深对理论教学知识的理解和掌握;从多方面积极开展教学研究和改革,确保“算法与数据结构”课程的教学效果,真正发挥该门课程在专业课程体系中的核心作用,为“数据库系统原理”、“操作系统”、“编译原理”等后续课程的学习奠定基础。

参考文献

[1]耿国华,“算法与数据结构”的课程改革与教学资源建设[J],计算机教育,2008,11:25-27

[2]刘万伟,薛源,罗宇,李暾,计算机专业课程体系与操作系统课程的衔接[J],计算机教育,2013,15:1-3

[3]史文秀,《数据结构》课程整体教学模式的建构[J],甘肃联合大学学报(自然科学版),2013,5:105-108

篇4:“数据结构与算法”课程学习总结报告内容要求

【摘 要】针对在数据结构与算法实验教学中如何提高学生的编程和算法设计能力,分析并指出了在实验教学中普遍存在的问题,结合实验课的教学改革,开发实验平台,以期有效激发学生的学习兴趣和积极性,培养动手和创新能力。

【关键词】数据结构与算法 实验改革 平台建设

【中图分类号】 G 【文献标识码】A

【文章编号】0450-9889(2014)07C-0132-03

数据结构与算法实验是计算机专业学生必修基础课数据结构与算法的配套实验课程,是培养学生程序设计技能必不可少的重要环节。其目标之一是培养学生能运用理论知识与算法技术分析解决实际问题,能运用高级程序设计语言编程实现算法。从近年实验情况来看,在上机编写程序实现具体算法时遇到的种种问题,效果不容乐观,学生很难按时完成实验所要求的内容。

一、实验教学存在的问题与分析

数据结构与算法实验是一门实践性很强的技术基础课,经过多年实验教学分析,发现普遍存在如下主要问题:

(一)课程抽象,实验难度大

数据结构具有一定的抽象性,学生面对抽象概念在学习过程中常会遇到困难,基本每本理论教材在呈现概念时都会受到多方面限制,比如篇幅的限制,省略了算法细节部分或只给出伪代码,由学生自己补充,学生需要将算法用程序设计方法实现,完成有一定难度和技巧的程序设计并上机调试运行。对编程基础稍微薄弱的学生来说,就会出现不小的困难。

(二)实验相关资料偏少

由于学生基础薄弱,实验前又没有更多的相关实验资料进行预习,仅靠看课本理论和实验时的几个学时难以完成实验所要求的任务,也就谈不上创新人才的培养。

(三)学生程序设计语言课程基础薄弱

数据结构与算法课程是第四学期开设,对于很多先修课程要求高,高级程序设计语言是大学生进校第一、二学期学习,第一学期学习过程序设计思想,第二学期学习面向对象程序设计思想,由于大部分同学高中没接触过计算机语言学习,对过程程序设计思想还没掌握透,第二学期的面向对象程序设计学习又开始,学习非常吃力;导致常用的一些语法结构,如指针和结构体等内容难于理解。而这些语法恰恰是程序设计语言教学时的难点,也正好是学生完成数据结构实验必须掌握的内容,这给部分学生学习带来了一定困难。

(四)编程语言难

数据结构与算法编程语言描述主要用到C++语言,并大量用到了指针、链表和结构体等运算,这部分内容正好是大多数学生掌握知识点薄弱的环节,导致学生很难用高级语言将教材中的算法描述出来,由于问题的堆积、实验的欠账,容易使学生丧失学习兴趣和信心,导致学生间抄袭程序或实验报告的现象。

(五)编程技巧差

普通学生在低年级只编写过功能单一、结构简单的程序;而从功能单一的简单程序向涉及算法和稍复杂程序的数据结构编写过渡学习时,需循序渐进的方式和细致的引导,紧密结合理论教学。学生一下从简单编程直接到复杂的程序设计,不仅不适应,且设计技巧性较差。

二、实验教学改革目标的提出

根据以上学生实验时出现的诸多问题,特提出该课程的实验改革目标:

一是紧密配合理论教学,通过相关实验,帮助学生加深对数据的逻辑结构、存储结构、算法思想和具体实现等各个环节的整体理解,强化学生“结构——算法——编程”三者密切相关的意识,让学生思考和发现利用数据结构解决实际应用问题的有效方法,从而使学生分析和解决问题的能力得到锻炼和提高。

二是因材施教,让原本不同水平和能力起点的学生通过数据结构实验,能力和水平都有所提高,并且有兴趣有信心学好数据结构课程。

三是培养学生多方面能力,比如团队精神,口头表达能力,对学生全方面发展起到较好的推动作用。

三、调整实验项目内容,使其更加符合学生的认知规律

数据结构与算法实验内容主要是编程实验,提高学生的实践编程能力,巩固和强化理论课的教学效果。为了保证和提高实验教学质量,加深对课堂知识的理解,培养学生动手能力和思维能力,尝试对数据结构与算法实验项目进行重新设计,主要内容有:

针对编程基础较薄弱的学生,我们开发了数据结构与算法实验教学平台,学生在该平台上可获知实验相关的更多内容,通过平台引导学生重点回顾程序设计语言的基础知识,特别是数组和指针等有关操作。通过这些辅助手段,使学生对将要编写程序的一些语法和程序规则有所复习和掌握。还可通过平台对实验原理的动画演示,得到帮助和启发,从而更好更快地完成实验内容。

每个实验内容以章节为单位安排,依据实验教学目的,针对计算机相关专业所要达到的不同实验教学目标,以及考虑学生个体差异,每个实验项目都设置基础必做题和附加选做题两部分内容。这两类实验都需要紧密结合理论教学。必做题相对简单,目的在于帮助学生掌握基础知识。对于该部分题目,学生容易完成,能提高学生学习积极性并增强学习信心;选做题针对学有余力的学生,各个实验项目中的必做题均设计详细的实验准备内容,用于引导学生更好地进行实验前预习准备工作;主要在于培养和鼓励学生的学习兴趣和扩大知识面,进一步培养学生应用能力和创新意识,保证基础弱的同学学习兴趣,也提高了编程能力强的同学动手能力。例如,与线性表一章理论教学相配合的实验项目是多项式加减法,这个实验是对线性链表的建立、插入、删除、遍历等进行综合运算,对数据结构与算法第一实验内容来说稍有难度,可作为选作题或增加实验学时。在与栈一章理论教学相配合的实验项目是迷宫,这部分实验内容要求掌握回溯法和栈的基本运算等知识,有一定难度;用括号匹配作为必做题,能培养学生独立钻研,有助于学生解决问题能力的训练。

四、实验教学方法探究

实验前学生必须先预习和熟悉实验教学平台,了解实验内容的目的和要求,理解算法,描述语言的语法,查看相关资料,写预习报告。

通过多年实验教学中实验完成情况分析,软件工程专业的学生语言掌握较好,大部分学生能按时完成实验项目,其它专业的学生实验完成情况较差;由此,实验编程语言可以因学生而异,除软件工程专业的学生采用面向对象程序设计C++外,其它专业主要采用C语言描述,并且可增加前期语言学习时间。只有编程语言掌握扎实,数据结构与算法实验才能很好地完成。

开发数据结构与算法实验网络教学平台系统,该平台主要包含有课程介绍、在线课程、互动学习、下载资料等模块。有针对性地对每一个实验项目进行详细讲解和实验原理分析的动画演示,将抽象的数据结构问题制作为教学动画,借助形象的案例理解抽象的概念。教学内容利用Web页面为基本元素出现在站点中,学生通过访问站点来进行交互式学习。以辅助学生自主学习为主要目的,解决学生实验时无从下手的局面,启发学生思维,促进学生程序设计能力的提高。平台系统流程图如图1所示。

在线课程是教学平台核心部分,也是学生对数据结构与算法实验加深理解的重要环节,该平台从实验预习,到实验原理算法的演示,再通过在线课堂的视频教学、在线测试题训练及各种原理进行拓展教学。为了方便学生学习较抽象的数据结构与算法,能顺利进行程序编写,该教学平台还包含有18个flash动画用于原理算法演示,主要包括栈和队列、线性表、递归、查找与排序、树、图等内容,每个flash动画都有实验原理及主要代码实现过程,能更加形象展示数据结构的原理。例如:栈是一种先进后出的数据结构,在对栈原理进行动画设计时,根据用数组实现栈的特点,采取对栈先进行初始化的代码模块来对栈进行初始化,之后运行相应代码模块观察压栈出栈过程,同时还能观察到栈中数据的变化。在大部分flash动画演示过程中,flash页面左侧是代码部分,能体现当前执行的代码,并与右侧的动画演示及讲解分析一一对应。演示过程中如用户需要重新开始,还可点击“重新开始”按钮。这些flash动画演示将代码与动画有机的结合在一起,将抽象的代码转换为有形的动画,大大方便学生学习和对实验内容的理解。

如对栈原理进行动画演示的flash点击界面中压栈代码动画效果,该动画效果包括等待入栈的数字入栈的动画效果和位于等待区域的数字前移的动画效果。等待入栈的数字、入栈的动画效果和位于等待区域的数字前移的动画效果如图3所示。

图3 压栈的动画效果图

该平台互动学习是一个教师和学生互动的场所,实现动态交互的功能,教师能添加、更改、删除各种资源,学生、教师可以查看各种资源库里的资源。同时,学生可从平台上下载练习题和测试练习题资料,练习题有主要算法描述,可帮助学生进一步理解每个章节的算法原理,测试练习题有自动报错功能。

五、改革数据结构实验考核方式

让学生对以前所做实验作一个分析和总结。具体操作方案如下:首先将学生自由分组,小组成员共同从以前做过的实验项目选做题中选择一个进行程序的分析设计和编码实现,要求考虑程序的编写规范,程序的执行效率等方面。考核时,由实验教师从该小组随机抽取学生到讲台进行讲解和演示,根据程序完成情况和学生演示情况,决定该小组成员的平均得分,而每位学生的具体得分由小组成员内部根据该学生在该程序实现中的工作情况决定。通过这种方式,能培养学生的团队意识,达到互学互助的效果,同时也锻炼了学生的表达能力。

数据结构与算法实验环节教学改革的创新之处在于依托一门编程语言以及所开发的实验教学平台,因材施教,根据不同专业实际情况,综合考虑进行实验项目、实验内容和实验准备的合理设置,帮助学生在实验课上找到自己的最好学习方式,提高实验教学质量。

【参考文献】

[1]吴兵.高校计算机文化基础课程网络学习题库的研发[J].实验技术与管理,2011(2)

[2]朱洪浩.数据结构课程“工程化”实践教学模式研究[J].赤峰学院学报(自然科学),2013(15)

[3]马晓波,王翠茹.《数据结构》实践教学改革探讨[J].内蒙古农业大学学报(社会科学版),2010(02)

[4]赵耀红,孙宇.数据结构实验教学的实践与探索[J].长春大学学报,2012(04)

篇5:数据结构与算法课程学习总结报告

计科系 10级计本

一、数据结构与算法知识点

《数据结构与算法》这本书共有十一个章节。从第一章的数据结构和算法的引入,介绍了数据和数据类型、数据结构、算法描述工具、算法和算法评价四个方面的知识。第二章则介绍了顺序表及其应用的相关知识。从顺序表的基本概念开始,分别介绍了顺序表基本算法、顺序表基本算法性能分析、顺序表的应用。顺序表应用又涉及多方面,有查找问题、排序问题、字符处理问题。其中查找分简单顺序查找,有序表的二分查找,分块查找三种。排序中分插入排序(直接插入排序、希尔排序)、交换排序(冒泡排序、快速排序)、选择排序(直接选择排序)、归并排序。第三章链表及其应用,分为链表的基本概念、单链表的数据结构、单链表的基本算法、循环链表、链表的应用。第四章堆栈及其应用,分为堆栈堆的基本概念、顺序栈及其基本算法、链栈及其基本算法、堆栈的应用。第五章队列及其应用,分为队列的基本概念、顺序队列及其基本算法、链队列及其基本算法、基数排序问题。第六章特殊矩阵和广义表及其应用,分为数组与矩阵,特殊矩阵的压缩存储、矩阵的应用实例、广义表。第七章二叉树及其应用。分为二叉树的基本概念、二叉树存储结构、二叉树的遍历算法、线索二叉树、二叉树的应用(基本算法、哈夫曼树、二叉排序树、堆和堆排序)。第八章树和森林及其应用。分为树和森林的基本概念,树的存储结构、树的基本算法及性能分析、树的应用(B树)。第九章散列结构及其应用。分为散列结构的概念等。着重学习了散列表、散列函数、冲突处理方法(开放定址法和链地址法)。第九章图及其应用。分为图的概念、图的存储结构及其基本算法、图的遍历及算法、有向图的连通性和最小生成树、图的最小生成树、非连通图的生成森林算法、最短路径、有向无环图及其应用。第十一章算法性能分析和算法设计方法简介。

二、对各知识点的掌握情况

综合以上知识点,我对自我学习成果作如下总结:对于第一章对数据结构的概念理解颇深,大概是每次都要谈论到吧。对算法的时间性能,空间性能基本了解。这些在后面的章节都会有运用。第二章顺序表较为清晰。如何去建一个顺序表,顺序表的一些基本算法都可以很好运用。在顺序表应用中对二分查找映象深刻。对于排序能了解其算法思想。对字符串的处理应用的较少,没有深入了解。第三章链表的知识,由于链表在上学期就有所接触,老师也强调其作用,对链表掌握还好,但在第三章中又学习到了新的内容,对其数据结构进行了分析,增加了循环链表,对知识进行补充。第四章堆栈,堆栈是一个运算受限的线性表,可对比顺序表的学习,不同的是还有链栈,这部分感觉是全书最容易的部分了。第五章队列是接着堆栈之后的又一个运算受限制的线性表,感觉和堆栈一样简单。第六章矩阵和广义表是我的弱项,在这部分的学习过程中没有用心学,现在正在深入研究。接下来的第七章第八章是全书的重点,特别是第七章二叉树,所以学习的重心也偏向这两章。对二叉树掌握较好,其概念,存储,遍历有很好的掌握。就是对二叉排序树有点生疏,它的生成算法不是很会。

第八章树和森林,树与二叉树之间的转换,森林与二叉树的转换算法思想基本掌握。第九章散列的一些知识,没有深入学习,大概了解了散列存储结构散列表,散列函数,冲突的处理方法。第十章感觉是很难的一章,知识点多,能够画有向图和无向图的邻接矩阵,邻接表。图的深度遍历和广度遍历,但是其算法只是能读懂。

三、学习体会

开学伊始,听说要学数据结构与算法,而且考试通过率极低,就带着这样恐惧的心理开始学习了。通过学习数据结构与算法让我对程序有了新的认识。“数据结构和算法”课程主要学习在软件开发中涉及到的各种常用数据结构及其常用算法,在此基础上,学习如何利用数据结构和算法解决一些基本的应用问题,通过学习我了解了相关领域的基础知识和基本

应用。知道了学习一种数据结构必须掌握该数据结构的定义,其包括逻辑结构,存储结构和基本算法还有基本应用知识。对于一个应用程序,不是它能运行,能显示结果就行了,还要考虑它的各方面的性能,时间性能,空间性能。以此节约空间和时间。给定一个程序首先要分析其应有的数据结构。怎么存储,怎么性能会比较好。“数据结构与算法”是一门很有用的科目,可是也是很令人头疼的学科,这也锻炼了我们迎难而上的毅力。当然学习数据结构与算法是建立在学习好计算机语言的基础上的,学习编程是枯燥无味的,学据结构给我带来更多的是思考的东西。

课程结束我总结了学习过程中遇到的困难,有时写不出合条件的算法,在写实验报告时,有时就是将书上的源程序搬上去,对程序进行一些修改。针对这一情况我会慢慢改正。多加思考。

四、对课程教学的建议

1、课程课时较紧,课堂上的练习时间较少,讲解的东西越多,头脑有时就很混乱。

篇6:“数据结构与算法”课程学习总结报告内容要求

学 号 2014014083 姓 名 汪明 课程设计题目 通讯录的制作

2016 年 1

目 录 需求分析 1.1 功能与数据需求 1.1.1 题目要求的功能 1.1.2 扩展功能 1.2 界面需求 1.3 开发环境与运行需求 2 概要设计 2.1主要数据结构 2.2程序总体结构 2.3各模块函数说明 3 详细设计

3.1算法分析与设计 3.2主要程序段设计 4 测试 5 使用说明

5.1应用程序功能的详细说明 5.2应用程序运行环境要求 5.5输入数据类型、格式和内容限制 6 总结提高

6.1课程设计总结

6.2开发中遇到的问题和解决方法 6.3 对自己完成课设完成情况的评价

6.4《C语言与数据结构课程设计》课程的意见与建议 附录:程序源代码

需求分析 1.1 功能与数据需求

1)输入信息--enter();2)显示信息---display();3)查找以姓名作为关键字---search();4)删除信息---delete();5)存盘---save();6)装入---load();

1.2 界面需求

1)每条信息至包含 :姓名(NAME)街道(STREET)城市(CITY)邮编(EIP)国家(STATE)几项;电话号码(TEL); 2)作为一个完整的系统,应具有友好的界面和较强的容错能力; 3)需要链表实现;

4)上机能正常运行。

1.3 开发环境

开发环境:

测试系统:Windows7,开发工具:Dev-C++ 概要设计 2.1主要数据结构

//构建链表的结构体 typedef struct CLUB { char NAME[20];//姓名 char STREET[20];//街道 char CITY[20];//城市 char STATE[20];//国家 char PHONE[20];//电话号码 char EIP[10];//邮编 struct CLUB *next;}CLUB;CLUB *headLink;

2.2程序总体结构 //主要函数

void Enter(CLUB *t);//录入 void Search(void);//查找

void Display(void);//输出输入的所有信息 void Delete(void);//删除信息 void Save(void);//保存

void Load(void);//从文件中的内容 //界面函数

void Menu(void);//显示菜单

2.2各模块函数说明

void CreateHeadLink(void);//创建 void Load(void);//从文件中的内容 void Menu(void);//显示菜单

void InsertOneNode(CLUB *t);//增加新结点

CLUB *MallocNode(void);//申请一个新结点,并将其初始化 void Enter(CLUB *t);//输入

void InsertOneNode(CLUB *t);//在链表的结尾处增加一个结点 void Search(void);//查找

void DesplayOneNode(CLUB *t);//输出一个结点的信息 void Display(void);//输出输入的所有信息 void Delete(void);//删除信息

void ChangeInforByName(void);//修改信息 void Save(void);//保存 详细设计

3.1算法分析与设计

Enter函数:从键盘中获得数据,通过scanf将各数据放入对应的链表中 Display函数:将链表中的数据输出 3.2主要程序段设计测试 使用说明

5.1应用程序功能的详细说明

先输入联系人的基本信息,可以显示录入的所有联系人的信息,可以将联系人的信息保存到CLUB.txt,当第二次运行时可以直接从CLUB.txt文件中调用 5.2应用程序运行环境要求 5.5输入数据类型、格式和内容限制 6 总结提高

6.1课程设计总结

6.2开发中遇到的问题和解决方法 6.3 对自己课程设计完成情况的评价 附录:程序源代码

#include #include #include #include #include #include typedef struct CLUB { char NAME[20];//姓名

char STREET[20];//街道

char CITY[20];//城市

char STATE[20];//国家

char PHONE[20];//电话号码

char EIP[10];//邮编 struct CLUB *next;}CLUB;CLUB *headLink;//链表表头指针 void CreateHeadLink(void);//创建 void Load(void);//从文件中的内容 void Menu(void);//显示菜单

void InsertOneNode(CLUB *t);//增加新结点

CLUB *MallocNode(void);//申请一个新结点,并将其初始化 void Enter(CLUB *t);//输入

void InsertOneNode(CLUB *t);//在链表的结尾处增加一个结点 void Search(void);//查找

void DesplayOneNode(CLUB *t);//输出一个结点的信息 void Display(void);//输出输入的所有信息 void Delete(void);//删除信息

void ChangeInforByName(void);//修改信息 void Save(void);//保存

int choose;//用于接收用户的选择 //主函数 int main(){ int j;system(“color 3E”);printf(“nnnnnnnnnn”);printf(“ttt %c ”,1);printf(“欢迎进入通信录!nn”);printf(“正在进入,请等候”);for(j=0;j<6;j++){ Sleep(300);printf(“.”);} system(“cls”);

CreateHeadLink();Menu();} //函数功能:从文件中读信息 void Load(void){ FILE *fp;CLUB *p;p=(CLUB *)malloc(sizeof(CLUB));headLink=p;p->next=NULL;fp=fopen(“CLUB.txt”,“r”);if(!fp){ printf(“文件不存在n”);return;} p=MallocNode();while(fscanf(fp,“%s%s%s%s%s%sn”,p->NAME,p->STREET,p-> CITY,p->STATE,p->PHONE ,p->EIP)>0){ InsertOneNode(p);p=MallocNode();} fclose(fp);}

//函数功能:显示菜单,根据用户的输入完成相应的功能 void Menu(void){ CLUB *p;printf(“nt|***********欢迎使用通信录信息管理系统****************|n”);printf(“t提示:为保证您的操作得到保存,请按正常顺序退出系统^_^n”);printf(“tt+------------主菜单---------------+n”);printf(“tt+ [1]******显示电话簿信息 +n”);printf(“tt+ [2]按姓名查找电话簿信息 +n”);printf(“tt+ [3]******录入电话簿信息 +n”);printf(“tt+ [4]******删除电话簿信息 +n”);printf(“tt+ [5]按姓名修改电话簿信息 +n”);printf(“tt+ [6]**保存所有电话簿信息 +n”);printf(“tt+ [7]装入文件中电话簿信息 +n”);printf(“tt+ [0]****************退出 +nn”);printf(“请输入指令:”);scanf(“%d”,&choose);//取得用户的选择

switch(choose){

case 1: Display();//显示所有电话簿的信息 Sleep(2000);system(“cls”);break;case 2: Search();//按姓名查找信息 Sleep(2000);system(“cls”);break;case 3: //录入新信息

p=MallocNode();//先申请一个新结点 Enter(p);//要求用户输入信息到新结点中 InsertOneNode(p);//将新结点加到链表中 Sleep(2000);system(“cls”);break;case 4: Delete();//删除电话簿信息

Sleep(2000);system(“cls”);break;case 5:

ChangeInforByName();//按姓名修改电话簿信息 Sleep(2000);system(“cls”);break;case 6: Save();//保存 Sleep(2000);system(“cls”);break;case 7:

Load();//装入 Display();Sleep(2000);system(“cls”);break;case 0: Save();//保存数据后再退出 free(headLink);exit(1);break;default:

} break;} Menu();//递归调用

// 函数功能:建立链表表头 void CreateHeadLink(void){ CLUB *p;p=(CLUB *)malloc(sizeof(CLUB));headLink=p;p->next=NULL;} // 函数功能:增加新结点 void InsertOneNode(CLUB *t){ CLUB *p;p=headLink;while(p->next){ p=p->next;} p->next=t;} //函数功能:申请一个新结点,并将其初始化 CLUB *MallocNode(void){ CLUB *p;int i;p=(CLUB*)malloc(sizeof(CLUB));if(p==NULL)return NULL;for(i=0;i<20;i++)p->NAME[i]=';

for(i=0;i<20;i++)p->STREET[i]=';

for(i=0;i<10;i++)p->CITY[i]=';

for(i=0;i<20;i++)p->STATE[i]=';

for(i=0;i<20;i++)p->PHONE[i]=';

for(i=0;i<20;i++)p->EIP[i]=';

p->next=NULL;} return p;//函数功能:录入电话簿信息 void Enter(CLUB *t){

} printf(“请输入姓名: n”);scanf(“%s”,t->NAME);printf(“请输入街道信息:n”);scanf(“%s”,t->STREET);printf(“请输入城市信息:n”);scanf(“%s”,t->CITY);printf(“请输入国家信息:n”);scanf(“%s”,t->STATE);printf(“请输入电话号码:n”);scanf(“%s”,t->PHONE);printf(“请输入邮编信息:n”);scanf(“%s”,t->EIP);//函数功能:在链表的结尾处增加一个结点 void InsertOneNode(void){ CLUB *p;p=headLink;while(p->next){ p=p->next;} p->next=p;} //函数功能:根据用户输入的姓名显示电话簿的信息 void Search(void){ CLUB *p;char NAME[20];char flag=0;p=headLink->next;printf(“请输入要查询的姓名信息:n”);scanf(“%s”,NAME);while(p){ if(strcmp(p->NAME,NAME)==0){ printf(“n 姓名t街道t城市t国家t电话号码t邮编n”);DesplayOneNode(p);flag=1;break;} p=p->next;} if(!flag)} printf(“对不起,不存在姓名为 %s 的电话簿信息n”,NAME);//函数功能:输出一个结点的信息 void DesplayOneNode(CLUB *t){ printf(“%st”,t->NAME);printf(“%st”,t->STREET);printf(“%st”,t->CITY);printf(“%st”,t->STATE);printf(“%st”,t->PHONE);printf(“%st”,t->EIP);printf(“nt”);} //函数功能:显示所有电话簿的信息 void Display(void){ CLUB *p;p=headLink->next;if(p==NULL){ printf(“现在没有电话簿信息,请先输入电话簿信息nn”);return;} printf(“n”);printf(“nt姓名t街道t城市t国家t电话号码t邮编ntnt”);while(p){ DesplayOneNode(p);p=p->next;} p=NULL;} //函数功能:根据用户输入的姓名删除 void Delete(void){ char NAME[20];CLUB *p,*q;char flag=0;printf(“请输入要删除的姓名信息:”);scanf(“%s”,NAME);p=headLink;q=headLink->next;while(q){ if(strcmp(q->NAME,NAME)==0){ p->next=q->next;free(q);flag=1;break;} p=p->next;q=q->next;} if(!flag){

} printf(“不存在该姓名的信息n”);return;} printf(“成功删除n”);//函数功能:根据输入的姓名修改电话簿信息 void ChangeInforByName(void){ CLUB *p;char NAME[20];char flag=0;p=headLink->next;printf(“请输入姓名:n”);scanf(“%s”,NAME);while(p){ if(strcmp(p->NAME,NAME)==0){

printf(“请输入新的街道信息:n”);scanf(“%s”,&p->STREET);printf(“请输入新的电话号码:n”);scanf(“%s”,&p->PHONE);printf(“修改成功n”);break;}

} p=p->next;} // 函数功能:保存链表数据到文件中 void Save(void){ CLUB *p;FILE *fp;p=headLink->next;if(p==NULL){

篇7:述职报告写作结构及内容要求

(参考)

述职报告可分为标题、正文、落款、时间几部分。

一、标题。有两种形式:

第一种,直接有“述职报告”作标题,较多见。第二种,根据述职报告的主要内容提炼出一句能概括其中心内容的话来作标题,而述职报告只作副题,如“忠于职守,尽力而为——我的述职报告”。

二、正文。

1.开头,即导言部分。这部分主要介绍自己何时至何时在何单位任何职务,分管哪一方面(或负责全面)工作,一年来在自已负责的工作范围内主要做了哪些工作,做到了什么程度,取得了哪些新的成绩等。这一部分要写的集中概括,简洁明了。

2.学习贯彻总书记系列重要讲话精神情况;坚定理想信念、政治立场,严守政治纪律和政治规矩情况。

3.一年来主要工作开展情况。重点是落实学校第三次党代会精神,围绕学校转型发展,在完成十二五规划任务、制定十三五规划,提升科技创新能力,提高人才培养质量,打造高水平师资队伍,提升管理服务水平,全面加强党的建设等方面工作的完成情况。领导干部还要报告抓基层党建工作或支持开展基层党建工作的情况。这是述职报告的核心部分,要紧紧围绕自已所分工负责的工作,以写实的方式报告重点工作开展和落实情况,常规工作运行情况,如无创新原则不再报告。教学单位党组织书记,重点要写贯彻落实第三次党代会精神,为学校转型发展提供思想和组织保障的具体举措;抓党的建设、履行党风廉政建设主体责任的情况,自己对党的路线、方针、政策的态度,带领全体教职员工执行情况,做深入细致的思想政治工作、开展批评与自我批评、团结一班人工作的情况;为政是否清廉,是否联系群众,为群众办了哪些实事,解决了哪些实际问题等方面的情况。

教学单位行政负责人,除了写明自已对党的路线、方针、政策的执行情况外,重点要写一年来所分工负责的工作情况,围绕落实学校第三次党代会精神,推进学校转型发展,在完成十二五规划任务、制定十三五规划,提升科技创新能力,提高人才培养质量,打造高水平师资队伍等方面所做的工作,学院面貌在原基础上有无改观;作风是否民主、是否联系群体,是否廉洁,为教职工解决了哪些实际问题与具体困难。

教学单位党内副职,主要写协助书记做思想工作、进行思想教育和所分工负责的工作情况及任职内的廉洁状况等。行政副职,写如何支持行政主管工作的,如何做好自己分管的工作,如抓教学、科研,坚持执行各项规章制度,资金的管理与使用、做学生工作、安全保卫工作等情况。

机关教辅单位干部,主要写围绕落实学校第三次党代会精神,服务保障学校转型发展,促进提升科技创新能力,提高人才培养质量,打造高水平师资队伍,在优化管理、提升管理服务水平,服务基层,提供制度和条件保障,发挥增值作用方面所做的工作。

除了写明上述内容外,如认为工作中有创新与突破之处,要总结指出并简要说明取得工作成绩的原因。

4.落实中央八项规定精神,反对“四风”,廉洁自律情况;加强法治建设、依法办事情况。开展党的群众路线教育实践活动及2014年民主生活会各项整改措施落实情况。述职报告中述廉内容及需要明示的问题如下:

(1)党风廉政建设责任制的落实情况。具体包括:对本单位教职工进行廉政教育及管理、执行“三重一大”制度、遵守财经纪律、招投标工作等方面的情况;

(2)个人遵守廉政制度及纪律情况。具体包括:遵守上级关于领导干部廉洁自律各项规定及制度、对配偶、子女的廉洁教育、参加民主生活会、开展批评和自我批评等方面的情况。

5.任职期间出现的失误和存在的主要问题。这一部分主要写在执行党的政策上的失误,教学、科研管理上的失误,经济工作决策上的失误,处理其他问题上的失误和发扬民主、联系群众、廉政建设等方面存在的问题。

6.结尾。这一部分主要表述干部的态度,欢迎大家对自己的述职报告评议。要写的简洁真诚。

篇8:“数据结构与算法”课程学习总结报告内容要求

(按照《统计专业毕业论文、课程论文、实习报告等排版格式 参考范文(第一版)》的要求排版,无需摘要和关键词,字数不少于2000字,第二和第三

部分是实习报告的主要内容)实习单位基本情况

实习单位介绍,主要业务范围(产品)、基本组织结构、各部门的功能和工作流程简单介绍。【不得拷贝公司自己网站或者其他介绍,必须询问、观察之后自己写出来】实习过程和内容(如是问卷,放在附录中)

介绍实习进行的过程和内容,尤其是尽量详细描述与统计有关的实习内容【可能有些实习工作跟统计不相干,但要自己去寻找与统计有关的工作】,包括数据的搜集过程。数据整理和分析

数据整理的过程,至少要进行描述性统计分析,分析中要有图和表。根据分析的结果,做出一些简单结论。如果能做一些推断统计的内容更好。心得和体会(不得用套话来凑字数,否则干脆不要写)

用自己的语言表达写出参加这次实习,对统计学和统计工作有了什么样认识,加深对哪些统计知识的理解。

参考文献

篇9:“数据结构与算法”课程学习总结报告内容要求

课程学习报告

(2)

课程名称:班级:

姓名:

成绩:指导教师:

(备注:署名的方式可集体署名或个人署名;集体署名最多不超过3人,署名的规则要按照贡献大小排序:提出研究设想、承担研究工作、解决关键问题、执笔撰写等。)

内蒙古工业大学信息工程学院课程学习报告

一 题目

基本放大电路学习总结

二.学习用仪器设备、器材或软件环境

1.计算机;

2.Multisim软件/MAX PLUS II软件;

3.Windows2000/XP环境、MS Office 2000以上版、Adobe Acrobat 5.0以上版。

4.……

(备注:学习过程中借助的辅助性工具。)

三.主要学习内容

1.放大电路的基本概念(备注:静态与动态;直流通路与交流通路;)

2.静态工作点的设置与估算(备注:改变哪些参数会对静态工作点产生影响?)

3.放大电路的基本分析方法(备注:总结归纳图解法、微变等效电路法)

4.放大电路的三种组态(备注:列表总结归纳三种组态的指标异同之处)

5.放大电路分析举例(备注:结合教材习题总结归纳)

8.……(备注:添加自主学习内容)

四*.学习体会及遇到的主要问题

(备注:根据需要可自主删选。主要内容包括:整篇报告的概括和小结;今后的学习展望;对教育教学实践的建议等)

五.主要参考文献

1.清华大学电子学教研组编,《模拟电子技术基础》(第四版),高等教育出版社,2006.6

2.(备注:自主删选,包括:书籍、刊物、报纸、网络,注意要完整注明出处)

……

*

附录:学习者主要分工说明

篇10:“数据结构与算法”课程学习总结报告内容要求

一、总结验收的申请

二、技术改造竣工总结

1、企业基本情况

2、项目建设依据、规模、建成的能力及主要经济技术指标

(1)、产能规模(2)、项目建设内容

(3)、总平面布置(4)、工艺路线及技术特点

(5)、设备选型及方案(6)、经济效应

3、项目实施情况

(1)、主要建设过程(时间进度)

(2)、建安工程和设备仪器完成及合同执行情况

(3)、原材料和动力供应

4、项目试运行和质量情况

(1)、建筑安装工程质量评价情况(2)、设备试运转情况

(3)、设备合同验收情况(4)、系统试运行情况

5、环保、消防、安全生产设施等建设情况和验收情况

6、资金使用和投资完成情况

7、资产移交及建设目标完成情况

8、项目档案归档情况

9、建设单位初步验收情况

10、投资效益分析及建设效果评价

11、经验总结

—3—

三、附表

1、《竣工验收项目概况表》

2、《投资决算汇总表》

3、《建安工程完成情况表》

4、《设备仪器配备表》

5、《设备安装领用材料表》

6、《其它工程费用表》

7、《交付使用资产表》

四、附件

1、项目备案文件

3、规划许可证

5、环评批复和验收合格文件

7、消防验收文件

9、其它

—4—

2、项目资金申请报告批复

4、土地证

6、安全生产验收文件

篇11:“数据结构与算法”课程学习总结报告内容要求

课程设计报告是每个设计小组和个人都必须提供的文件,课程设计报告中应包含以下内容:

1.题目名称

题目名称是选择的课程设计作品的名称,如“基于XE1203A 433 MHz / 868 MHz / 915 MHz收发器电路设计”。

题目名称下面提供参加设计者的专业、班级、姓名、学号和指导教师(黄智伟,肖化武)的姓名。

2.摘要

摘要是对课程设计总结报告的总结,摘要一般在300字左右。摘要的内容应包括目的、方法、结果和结论,即应包含设计的主要内容、设计的主要方法和设计的主要创新点。

摘要中不应出现“本文、我们、作者”之类的词语。英文摘要内容应与中文相对应;一般用第三人称和被动式。中文摘要前加“摘要:”;英文摘要前加“Abstract:”。

关键词按 GB/T 3860的原则和方法选取。一般选 3~8个关键词。中、英文关键词应—一对应。中文前冠以“关键词:”,英文前冠以“key words:”。

在中文关键词的下行,按中国图书馆分类法(第四版,1999年3月版)给出本设计总结报告的“中图分类号:”。

3.目录

目录包括课程设计总结报告的章节标题、附录的内容,以及章节标题、附录的内容所对应的页码。应注意的是:虽然目录是放在设计总结报告的前面,但它的成型和整理确是在设计总结报告完成之后进行。章节标题的排列建议按如下格式进行:......…...(第1级)(字体:小二号黑体)1.1.........(第2级)(字体:三号标宋)1.1.1.........(第3级)(字体:四号黑体)

(1)………(第4级)(字体:小四号粗楷体)

①............(第5级)(字体:五号宋体)

a.......………(第6级)(字体:五号宋体)………............。

4.正文

正文是课程设计报告的核心。课程设计报告正文的主要内容包含有:系统方案设计、集成电路、元器件选择和电路设计、计算机仿真、系统测试、结论、附录。

(1)系统方案设计

在系统方案设计这一章节中,主要介绍系统设计思路与总体方案的可行性论证,各功能块的划分与组成,介绍系统的工作原理或工作过程。

应注意的是:在总体方案的可行性论证中,应提出几种(2~3种)总体设计方案进行分析与比较,总体设计方案的选择既要考虑它的先进性,又要考虑它的实现的可能性。

例如:波形发生器

方案1:采用集成函数发生器产生要求的波形

利用函数发生器(如ICL8038)产生频率可变的正弦波、方波、三角波三种周期性波形。此方案实现电路复杂,难于调试,实现合成波形难度大,且要保证技术要求的指标困难,故采用此方案不理想。

方案2:采用单片机控制合成各种波形

波形的选择、生成及频率控制均由单片机编程实现。此方法产生的波形的频率范围、步进值取决于所采用的每个周期的输出点数及单片机执行指令的时间。此方案的优点是硬件电路简单,所用器件少,且实现各种波形相对容易,在低频区基本上能实现要求的功能;缺点是控制较复杂,精度不易满足,生成波形频率范围小,特别是难以生成高频波形。

方案3:采用带存储电路的单片机控制方案

采用带存储电路的单片机控制方案将波形和频率数据存储在存储器中,按要求将存储器中的数据读至DAC,实现任意波形的合成,也可以得到较高的频率分辨率。此电路方案能实现基本要求和扩展部分的功能,电路较简单,调试方便,是一个优秀的可实现的方案。

方案4:采用DDS技术直接合成

采用DDS技术,将所需生成的波形写入RAM中,按照相位累加原理合成任意波形。此方案理论上可得到很高的分频率的周期波形;也可以合成任意波形。但实际中合成的波形与理论有差距。

对上述方案应仔细介绍系统设计思路和系统的工作原理,对各方案进行分析比较。对选定的方案中的各功能块的工作原理也应介绍。

(2)单元电路设计与仿真 在单元电路设计中不需要进行多个方案的比较与选择,只需要对已确定的各单元电路的工作原理进行介绍,对各单元电路进行分析和设计,并对电路中的有关参数进行计算及元器件的选择等。

所选择的集成电路芯片需要写出内部结构、工作原理、引脚端功能、主要技术指标、外部元器件选择、应用电路。

应注意的是:理论的分析计算是必不可少的。在理论计算时,要注意公式的完整性,参数和单位的匹配,计算的正确性;注意计算值与实际选择的元器件参数值的差别。电路图可以采用手画,也可以采用PROTEL或其它软件工具绘画,应注意元器件符号、参数标注、图纸页面的规范化。

如果采用仿真工具进行分析,可以将仿真分析结果表示出来。

(3)系统测试

详细介绍系统的性能指标或功能的测试方法、步骤,所用仪器设备名称、型号,测试记录的数据和绘制图表、曲线。应注意的是:要根据设计题目的技术要求和所制作的作品,正确的选择测试仪器仪表和测试方法。例如:作品是一个采用高频开关电源方式的数控电源,如果选择的示波器是低频示波器,所测试的一些参数是会有问题的。测试的数据要以表、图或者曲线的形式表现出来。

(4)结论

对作品的测试的结果和数据进行分析和计算,也可以利用MATLAB等软件工具制作一些图表,必须对整个作品作一个完整的、结论性评价,也就是说要有一个结论性的意见

最后需要写自己的收获和体会。

5.参考文献

参考文献部分应列出在设计过程中参考的主要书籍、刊物、杂志等。参考文献的格式如下:

a.专著、论文集、学位论文、报告

[序号] 主要责任者(.)文献题名[专著([M].);论文集([C].);学位论文([D].);报告([R].)](.)出版地(:)出版者(,)出版年(.)起止页码(.)

b.期刊文章

[序号] 主要责任者(.)文献题名([J].)刊名(,)年(,)卷(期)(:)起止页码(.)

c.国际、国家标准

[序号]标准编号(,)标准名称([S])d.电子文档

建议格式:Zarlink Semiconductor Inc.ZL20250 2.5G Multimode Transceiver Data Sheet.,2005.5 参考文献中的作者是英语拼写的,应是姓在前,名在后。参考文献在正文中应标注相应的引用位置,在引文后的右上角用方括号标出。

6.附录

附录包括元器件明细表、仪器设备清单、电路图图纸、设计的程序清单、电路使用说明等。

应注意的是:元器件明细表的栏目应包含有:①序号、②名称、型号及规格(例如:电阻器RJ14-0.25W-510Ω±5%)、③数量、④备注(元器件位号)。

仪器设备清单的栏目应包含有:①序号、②名称、型号及规格、③主要技术指标、④数量、⑤备注(仪器仪表生产厂家)。

电路图图纸要注意选择合适的图幅大小、标注栏。程序清单要有注释,总的和分段的功能说明等。

7.字体要求

一级标题:小二号黑体,居中占五行,标题与题目之间空一个汉字的空。二级标题:三号标宋,居中占三行,标题与题目之间空一个汉字的空。三级标题:四号黑体,顶格占二行。标题与题目之间空一个汉字的空。四级标题:小四号粗楷体,顶格占一行。标题与题目之间空一个汉字的空。标题中的英文字体均采用Times New Roman体,字号同标题字号。四级标题下的分级标题的标题字号为五宋。正文字号为五宋。

所有文中图和表要先有说明再有图表。图要清晰、并与文中的叙述要一致,对图中内容的说明尽量放在文中。图序、图题(必须有)为小五号宋体,居中排于图的正下方;

表序、表题为小五号黑体,居中排于表的正上方;图和表中的文字为六号宋体;表格四周封闭,表跨页时另起表头。

图和表中的注释、注脚为六号宋体;数学公式居中排,公式中字母正斜体和大小写前后 要统一。

公式另行居中,公式末不加标点,有编号时可靠右侧顶边线;若公式前有文字,如例、解等,文字顶格写,公式仍居中;公式中的外文字母之间、运算符号与各量符号之间应空半个数字的间距;若对公式有说明,可接排,如:式中,A-XX(双字线);B-XX,当说明较多时则另起行顶格写“式中

A-XX

”;回行与A对齐写“B-XX ”;公式中矩阵要居中且行列上下左右对齐。

一般物理量符号用斜体(如:f(x)、a、b等);矢量、张量、矩阵符号一律用黑斜体;计量单位符号、三角函数、公式中的缩写字符、温标符号、数值等一律用正体;下角标若为物理量一律用斜体,若是拉丁、希腊文或人名缩写用正体。

上一篇:大学生生涯规划表下一篇:食品安全尔雅考试答案