课程设计心得体会
姓名:王梦宇 学号:0804012009
课程设计课程已经结束了,每当看到自己写的一个小程序时,心里有点自豪,但自己对的代码不是很满意。
我做得是单循环赛中选手胜负序列求解问题,一开始,我对这个题目的一时还不清楚,看到题目就如一团雾水,根本不知道什么是单循环赛。刚开始我就思考到底是什么单循环赛。经过查询和询问别人弄懂了单循环赛的定义。
知道了单循环比赛的定以后,又弄清楚了单循环赛的比赛过程,最后确定了算法。所谓单循环赛,就是所有参加比赛的队均能相遇一次,最后按各队在全部比赛中的积分、得失分率排列名次。如果参赛球队不多,而且时间和场地都有保证,通常都采用这种竞赛方法。单循环比赛轮次的计算 有两种不同的理解,一个是按比赛的积分排名产生胜负序列,第二个是按比赛过程中各个选手间的胜负关系产生胜负序列。过程具体分析为按比赛中积分排名产生胜负序列:比赛可规定各个选手之间均遭遇且只遭遇一次,比赛时胜方得1分,负方负一分,在比赛结束时按积分排名进行排序,由此产生胜负序列关系。按比赛过程中各个选手间的胜负关系产生胜负序列,该种方法是以过程中的胜负为标准从而产生胜负序列,当然,这种胜负序列很大的可能性是不唯一的,本程序按课程设计任务书的要求,仅求出其中的一个胜负序列关系。
我所采用的 是结构数组和图来解决。结构数组还好,是属于简单的一 类,但是图的结构很复杂,但是这个问题离开了图就很难解决了,而我对于图这方面的理解是很浅的。中间也遇到了很多问题,但是,在我的同学,老师的帮助下还是解决了问题,虽然有些地方还是不尽如人意,但是对我自己是一个很大的提高。
通过这次的实验,我对图与结构数组有了更深的理解,对这门课的算法思想也有更大的体会。还有更多的是,我和同学,老师的交流多了,能从他们身上学到更多的,也看到自身的一些不足。说明在以后的学习中我还得更加的努力。在交流的过程中,我的表达能力也有很大的提高,不管是书面的还是口头表达。
通过这次试验,对C,C++等一些编程工具有了更具体的了解,运用也更加熟练。对Word, 文本文档等一些文字处理工具也更加熟悉。这对以后的学习和工作有很大的帮助。
而且,实验过程当中,也能体现出大家的合作精神,老师和学生的合作,学生和学生的合作等等,体现的是一种和谐。还有我决的以后无论你做什么,最重要的是要有毅力。例如:在编写根据选手胜负寻列求解代码时,自己坚持花了两天的时间,终于把它深度递归搜索的算法写了出来,当然要特别感谢指导老师,但是最重要的是自己认真的思索。
总之在这次的实验中我学习了很多,自身的素质也得到很大的提高,对以后的学习和工作将会产生很大的帮助。
第二篇:数据结构与算法课程设计 心得体会 学习体会 (30)
课程设计心得体会
通过了这两个星期的程序设计,我从中得到了许多的经验以及软件设计的一些新的思路;从这个八皇后问题设计以及分析中,本人从中理解到了数据结构对于计算机软件设计的重要性,它的使用,可以改变一个软件的运行周期,也可以将软件的思路从繁化简,并且都能够通过数据结构的相关引导,将本身以前编程思想进行扩充,发展;这也是在这次课程设计中我所掌握得到的。
但由于对软件设计的经验不足,在这过程中也出现了一些问题,如,八皇后在变成初期由于没真正体会到数据结构中“树”在里面的运用,将程序往大一时c语言的方向发展,不自觉的采用了非递归的算法,结果大大增加了程序的复杂程度。并且也让整个程序的时间复杂度变得更大;在后来对数据结构的第八章进行了比较深入的研读,才发现了数据结构树的实际运用的空间是相当的大,并且,通过了重温树的回溯,以及二叉树的遍历,最终将程序进行了一次较大的改造。并且通过思考,再将以前的数组知识加以运用才最终解决了这个问题,整个程序的算法的可看性也有了相当的改进。
课程设计随着时间的推移,也即将结束了,但这个学期数据结构的学习还是具有相当大的意义,它从一个程度上改变了我们的编程思想,如何将一个程序快速而又准备的进行编写,进行编译,都成为了我们思考的重点,也通过这一个学期的学习,我们将数据结构的思想带入到了我们以后的编程学习中去。在这个阶段,我也明白了,好的思想,不能提留于字面上的认知,还需要的是平时多练多写一些相关的程序,并且通过修改,加入新的算法去尝试改变自己的一些编程思想。保持更新算法的速度,这才是关键。
课程设计已经接近尾声了,但它给我的不只是程序设计上的满足,更重要的是对自己编程思想的一次更新,以及对算法的一个全新的认识!
致 谢
在这次课程设计中,我遇到了不少问题,包括程序上的和课程设计论文的撰写上的,指导老师曾给过我许多帮助,在此我表示对他们的忠心感谢。同时,实验室的工作人员也给了我提供了良好的上机环境,给了我一个做课程设计的很好的条件,我才能够顺利的完成,在此,我仅以文字的形式表示忠心感谢,感谢他们这些天对我的帮助。