《2022年数据结构实训心得体会.docx》由会员分享,可在线阅读,更多相关《2022年数据结构实训心得体会.docx(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选学习资料 - - - - - - - - - 优秀办公范文 欢迎下载这次课程设计的心得体会通过实习我的收成如下1、巩固和加深了对数据结构的懂得,提高综合运用本课程所学学问的才能;2 、培育了我选用参考书,查阅手册及文献资料的才能;培育独立摸索,深化争论,分析问题、解决问题的才能;调试,把握应用软件的分析方法和工程设计方法;3、通过实际编译系统的分析设计、编程 4、通过课程设计,培育了我庄重认真的工作作风,逐步建立正确的生产观念、经济观念和全局观念;从刚开头得觉得很难,到最终把这 个做出来,付出了许多,也得到了许多,以前总以为自己对编程的地方仍不行,现在,才发觉 只要认真做,没有什么不行能;
2、编程时要认真认真,显现错误要准时找出并改正,(其中对英语的要求也表达出来了,由于它说明错误的时候都是英语)遇到问题要去查相关的资料;反复的调试程序,最好是多找 几个同学来对你的程序进行调试并听其对你的程序的建议,在他们不知道程序怎么写的时候完 全以一个用户的身份来用对你的用户界面做一些建议,正所谓当局者迷旁观者清,把各个留意 的问题要想到;同时要形成自己的编写程序与调试程序的风格,从每个细节动身,不放过每个 学问点,留意与理论的联系和理论与实践的差别;另外,要留意符号的使用,留意对字符处理,特殊是对指针的使用很简洁出错且调试过程是不会报错的,那么我们要始终留意指针的初始化 不管它怎么用以免不必
3、要麻烦;通过近两周的学习与实践,体验了一下离开课堂的学习,也可以懂得为一次实践与理论 的很好的连接;特殊是本组所做的题目都是课堂上所讲的例子,在实行之的过程中并不是那么 简洁事让人有一种纸上谈兵的体会,正所谓纸上得来终觉浅绝知此事要躬行;实训过程中让我 们对懂得的学问做了进一步深化明白,让我们的懂得与记忆更深刻,对不懂的学问与不清晰的 东西也做了肯定的明白,也形成了肯定的个人做事风格;通过这次课程设计,让我对一个程序的数据结构有更全面更进一步的熟悉,依据不同的 需求,采纳不同的数据储备方式,不肯定要用栈,二叉树等高级类型,有时用基本的一维数组,只要运用得当,也能达到相同的成效,甚至更佳,就如这
4、次的课程设计,通过用for的多重循环,舍弃余外的循环,提高了程序的运行效率;在编写这个程序的过程中,我复习了之前学 的基本语法,哈弗曼树最小路径的求取,哈弗曼编码及译码的应用范畴,程序结构算法等一系 列的问题它使我对数据结构转变了看法;在这次设计过程中,表达出自己单独设计模具的才能 以及综合运用学问的才能,体会了学以致用、突出自己劳动成果的欢乐心情,也从中发觉自己 平常学习的不足和薄弱环节,从而加以补偿;篇二:数据结构试验心得 数据结构课程设计心得体会(专业:运算机科学与技术姓名:朱文学号: 2022220227)通讯录治理系统是基于双向循环链表设计而成的信息治理系统;该系统通过对程序进行 模
5、块化,建立添加、显示、查找和删除功能的函数,各函数中运用双向循环链表储备数据;为 储备通讯录信息,需定义一个结构体类型,成员包括姓名、街道、城市、邮编、国家等,并建 立双向循环链表,定义该结构体类型的指针,用于指向各结点;分别建立具有添加、删除、修 改、查询等功能的子函数,完成相应功能,对程序实现模块化;这其中要用到对链表的删除、插入等学问;为实现储备功能,需用到文件的相关函数 开发一个通讯录治理系统,借助运算机可以便利、快捷、敏捷的治理个人的伴侣及相关 人员的通讯信息,明白友人相关信息,帮忙与友人保持联络;所以设计一个通讯录治理系统管 理各人的通讯信息是特别必要的,同时,通过用循环双向链表设
6、计通讯录治理系统可以让我们 更好的去懂得循环双向链表,更好的学好数据结构这门课程;本次试验中,我们使用分工合作的方式,第肯定义了函数的结构体部分,剩下的依据函 数所要实现的功能进行分工合作,我实现的是通讯录中删除功能的子函数,删除信息(void deletednode *head)的功能是依据用户输入的姓名第一进行按姓名查询功能,查找成功,就执行删除信息的功能,查询不胜利,就提示错误信息;定义结点p,输入要删除的信息的姓名,按姓名查找结点,假如找到匹配的结点 p,就进行相关的删除操作,否就就是没找到要删除的数据,最终返回到主函数;名师归纳总结 - - - - - - -第 1 页,共 5 页精
7、选学习资料 - - - - - - - - - 优秀办公范文 欢迎下载这次试验中我深刻熟悉到合作的重要性;例如:我所编写的按名删除功能的实现中,应 用了章林霞同学所编写写的按名搜寻查询功能的那部分函数,在这次试验中,我学到许多东西,加强了我的动手才能,并且培育了我的独立摸索才能;我们坚持理论联系实际的思想,以实践 证明理论,从实践中加深对理论学问的懂得和把握;试验是我们快速熟悉和把握理论学问的一 条重要途径;通过这次课程设计,我们对c 语言以及数据结构有了更深刻的明白,增强了程序的编写才能,巩固了专业学问,对程序的模块化观念也又模糊逐步变的清晰了;在程序的运行与调试 过程中显现了许多错误,通过
8、反复地复习课本上的相关学问,不停地修改与调试,我们最终完 成了这段程序;在调试过程中,我们熟悉到了数据结构的敏捷性与严谨性,同一个功能可以由 不同的语句来实现,但编写程序时要特殊留意细节方面的问题,由于一个小小的疏忽就能导致 整个程序不能运行;我们也熟悉到了自己的薄弱之处,如对链表相关学问的欠缺,文件运用的 不娴熟,在以后的学习中我们要集中精力、端正态度,争取把学问学得更扎实、更全面;经过这次的试验,我们整体对各个方面都得到了不少的提高,期望以后学校和系里能够 开设更多类似的试验,能够让我们得到更好的锤炼;也让我们深深感受到争论沟通很重要,遇 到困难时,大家一起争论,加强我们的团队合作精神,同
9、时通过这次的课程设计,我们对 数据结构中双向链表结构有了更深刻的懂得;篇三:数据结构综合试验心得体会 心得体会:做了一个星期的程序设计最终做完了,在这次程序设计课中,真是让我获益匪浅;对大 一学习的 c 语言和这学期开的数据结构,并没有把握,许多学问都不太懂,突然让自己独立 完成一个程序让我手忙脚乱,起码在我认为那真的特殊难,看了老师给的题目以及上网查找了 一些相关的学问,简洁的编了几行就告一段落了,第一天等于只完成了老师要求写的需求分析 和概要设计,后来查找了关于哈希表的相关学问,明白了如何创建哈希表,如何合适的构建哈 希函数,(选取合适的表长,合适的余数,使得查找时间以及平均查找长度最短)
10、以及什么是 除留余数法,和怎样用除留余数法创建哈希表,看懂了之后,我又看了处理冲突的方法,有三 种线性探测再散列法法,二次探测再散列法,伪随机数序列法三种,而我所要做的是第一种线 性探测再散列的方法,相较后两种要简洁许多,在遇到冲突的时候地址加一,知道冲突解决;在明白这些概念以后,我就开头着手编程序了,在遇到问题的时候请教我们班善于的同 学,渐渐把不能不会不懂得的地方给弄明白了,在经过许多次调试以后,一些基本功能已经可 以实现了,为了使平均查找长度越小越好,我不断尝试新的表长以及除数,在没有显现错误的 基础上,将功能实现,最终,最终在周四的时候将全部的程序调试完全;这次的综合性试验使我明白到,
11、平常对学问的积存相当重要,同时也要留意课上老师的 讲解,老师在课上的延长是课本上所没有的,这些学问对于我们对程序的编写有很大的作用,同时,编程也要求我们有足够的耐心,细细推敲;越焦急可能就越无法得到我们想要的结果,遇到不会的问题要多多请教,学问是在实践与向别人请教的过程中积存的,所以问是至关重要 的,只要肯下功夫许多东西都是可以完成的;篇四:数据结构试验报告及心得体会20222022第一学期数据结构试验报告姓名:史孟晨班级:信管一班 学号: 202251018 试验报告题目及要求 一、试验题目设某班级有m(6 )名同学,本学期共开设n(3 )门课程,要求实现并修改如下程序(算法);名师归纳总结
12、 1.输入同学的学号、姓名和 n 门课程的成果(输入提示和输出显示使用汉字系统),第 2 页,共 5 页输出试验结果;( 15 分)2.运算每个同学本学期 n 门课程的总分,输出总分和n 门课程成果排在前 3 名学生的学号、姓名和成果;3.按同学总分和 n 门课程成果关键字升序排列名次,总分相同者同名次;- - - - - - -精选学习资料 - - - - - - - - - 优秀办公范文 欢迎下载二、试验要求1 修改算法;将奇偶排序算法升序改为降序;(15 分)2 用挑选排序、冒泡排序、插入排序分别替换奇偶排序算法 降序算法;(45 分), 并将升序算法修改为3 编译、链接以上算法,按要求
13、写出试验报告(25 ); 5 用 a44.修改后算法的全部语句必需加下划线,没做修改语句保持按原样不动;纸打印输出试验报告;三、试验报告说明试验数据可自定义,每种排序算法数据要求均不重复; 1 试验题目: n 门课程同学成果名次排序算法实现;2 试验目的:把握各种排序算法的基本思想、试验方法和验证算法的精确性;3 试验要求:对算法进行上机编译、链接、运行; 4 试验环境( windows xp-sp3,visual c+; 5 试验算法(给出四种排序算法修改后的全部清单);6 试验结果(四种排序算法模拟运行后的试验结果); 7 试验体会(文字说明本试验胜利或不足之处);三、试验源程序(算法)s
14、core.c #include stdio.h #include string.h #define m 6 #define n 3 struct student char name10; int number; 名师归纳总结 int scoren+1; /*scoren为总分 ,score0-score2为学科成果*/ 第 3 页,共 5 页*/ stum; void changesortstruct student a,int n,int j int flag=1,i; struct student temp; whileflag flag=0; fori=1;i<n-1;i+=2 /
15、*对全部奇数项进行一遍比较if ai.scorej>ai+1.scorej temp=ai; ai=ai+1; ai+1=temp; flag=1; fori=0;i<n-1;i+=2 /*对全部偶数项进行一遍比较*/ if ai.scorej>ai+1.scorej temp=ai; ai=ai+1; ai+1=temp; flag=1; void print_scorestruct student a,int n,int j int i,k; printf“ 奇偶交换成果 %d 排序表 ,j+1; printfn; printf 名次 学 号姓名分 数n; k=1; fo
16、ri=0;k<n&&i<n;i+ ifi>0&&ai.scorej.=ai-1.scorej k+; printf %4d ,k; printf%4d,ai.number; printf %s,ai.name; printf %6d,ai.scorej; printfn; main int i,j,k; for i=0;i<m;i+ /*输入每个同学信息*/ printf请输入第 %d 名同学分数 : ,i+1;printfn; printf姓名: ; scanf%s,stui.name; printf编号: ; scanf%4d,&am
17、p;stui.number; printf数据结构 : ; scanf%4d,&stui.score0; printf离散数学 : ; scanf%4d,&stui.score1; printf高校英语 : ; scanf%4d,&stui.score2; - - - - - - -精选学习资料 - - - - - - - - - 优秀办公范文 欢迎下载fori=0;i<m;i+ /* 运算每个同学总分 */ stui.scoren=0; forj=0;j<n;j+ stui.scoren+=stui.scorej; changesortstu,m,n; /
18、* 对总分进行排序 */ printf 同学总分成果排序表 n; printf 名次 学号 姓 名 数据结构 离散数学 高校英语 k=1; fori=0;i<m;i+ ifi>0&&stui.scoren.=stui-1.scoren k+; printf%4d,k; printf %4d,stui.number; printf %s,stui.name; forj=0;j<n+1;j+ printf %6d,stui.scorej; printfn; changesortstu,m,0; /* 对数据结构成果进行排序 */ print_scorestu,m,
19、0; /* 输出数据结构前 3 名同学成果 */ changesortstu,m,1; /* 对离散数学成果进行排序 */ 总 分n; 篇五:数据结构实训报告山东科技高校泰山科技学院课程实训说明书课程:数据结构项目实训题目:院系:信息工程系指导老师:2022年 5月 25日专业班级:学号:同学姓名:目录一、设计题目.3 1.1 次序表操作.3 1.2 链表操作 .3 1.3 二叉树的基本操作 .3 二、运行环境(软、硬件环境).3 2.1 软件环境.3 2.2 硬件环境 .3 三、数据结构及算法设计的思想 .3 3.1 次序表设计构思.3 3.2 链表设计构思 .4 3.3 二叉树设计构思 .
20、4 四、源代码.5 名师归纳总结 5.1 次序表源代链表源代第 4 页,共 5 页码.5 5.2 - - - - - - -精选学习资料 - - - - - - - - - 优秀办公范文欢迎下载二码.6 5.3 叉树源代码 .8 五、运行结果分 析.11 6.1 次序表运行结链表运行 二果.11 6.2 结果 .13 6.3 叉树运行结果 .15 七、实习总 结.18 一、设计题目1.1 链表操作 1.1.1 设计目的. 把握线性表的在次序结构和链式结构实现;. 把握线性表在次序结构和链式结构上的基本操作;1.1.2 设计内容和要求 利用次序表链表的插入运算建立线性链表,然后实现链表的查找、插
21、入、删除、计数、输出、排序、逆置等运算(查找、插入、删除、查找、计数、输出、排序、逆置要单独写成函数),并能在屏幕上输出操作前后的结果; 1.2二叉树的基本操作 1.2.1 设计目的. 把握二叉树的概念和性质 . 把握任意二叉树储备结构; . 把握任意二叉树的基本操作;1.2.2 设计内容和要求 1 对任意给定的二叉树(顶点数自定)建立它的二叉链表储备结构,并利用栈的五种 基本运算(置空栈、进栈、出栈、取栈顶元素、判栈空)实现二叉树的先序、中序、后序三种 遍历,输出三种遍历的结果;名师归纳总结 2 求二叉树高度、结点数、度为1 的结点数和叶子结点数;第 5 页,共 5 页- - - - - - -