20172321 2018-2019-1《程序设计与数据结构》课程总结
20172321 2018-2019-1《程序设计与数据结构》课程总结
(按顺序)每周作业链接汇总
- 第一周作业:第一二章,学习了数据结构,并且学习了大O计数法和时间复杂度的使用。
- 第二周作业:第三四章,学习了分别用数组和链表实现栈(先进后出)。
- 第三周作业:第五章,学习了分别用数组和链表实现队列(先进先出)。
- 第四周作业:第六章,学习了用数组和链表实现列表(有序和无序列表)
- 第五周作业:第九章,学习了查找算法和排列算法。
- 第六周作业:第十章,学习了树。
- 第七周作业:第十一章,学习了二叉查找树。
- 第八周作业:第十二章,学习了优先队列和堆。
- 第九周作业:第十五章,学习了图。
自认为写得最好一篇博客是?为什么?
- 暑假作业的提交博客
- 这个学期的每周博客好像没有哪篇是加过分的噢,虽然我觉得自己其实还比以前有点进步,可能是和同学们比起来还是进步得太少了吧。总之,写得最好得博客就是这篇了,可能是因为暑假付出得心血比较多,想再来个比较完美的结尾吧,
肯定不是因为加了两份比较高兴的缘故噢。嗯,决定就是这篇了,毕竟加了分。。。
作业中阅读量最高的一篇博客是?谈谈经验
- 第一周作业
- 我搞不懂为什么啊,不清楚、不知道、不明白,硬要说的话,应该是那次作业交的比较早,又是第一周作业,同学们都忘记了怎么写博客了,互相参考一下了吧,嘿嘿嘿。
(按顺序)实验报告链接汇总
- 实验一 线性结构之链表和数组:对链表和数组的使用进行练习操作。
- 实验二 树:对树的各种类型进行学习和使用。
- 实验三 查找与排序:深入学习对查找与排序算法的使用。
(按顺序)团队项目报告链接汇总
- 团队作业--第一次(https://www.cnblogs.com/lc1021/p/9985916.html)
- 团队作业--第二次(https://www.cnblogs.com/amberR/p/10054525.html)
- 选择困难症的福音——团队Scrum冲刺阶段-Day1领航(https://www.cnblogs.com/amberR/p/10098637.html)
- 选择困难症的福音——团队Scrum冲刺阶段-Day2(https://www.cnblogs.com/amberR/p/10105540.html)
- 选择困难症的福音——团队Scrum冲刺阶段-Day3(https://www.cnblogs.com/amberR/p/10111223.html)
- 选择困难症的福音——团队Scrum冲刺阶段-Day4(https://www.cnblogs.com/amberR/p/10117206.html)
- 选择困难症的福音——团队Scrum冲刺阶段-Day5(https://www.cnblogs.com/amberR/p/10128897.html)
- 选择困难症的福音——团队Scrum冲刺阶段-Day6(https://www.cnblogs.com/lc1021/p/10125262.html)
- 选择困难症的福音——团队Scrum冲刺阶段-Day7(https://www.cnblogs.com/amberR/p/10128840.html)
代码托管链接:
- 给出statistic.sh的运行结果,说明本学期的代码量目标达到没有?
这远远是够了的啊
-
加点代码,改点代码是理解的最好方式,参考编程的智慧,谈谈你的心得
- 编程是一种创造性的工作,是一门艺术。 我上个学期就很是赞同,然而我现在还是依旧不是怎么享受编程的过程,甚至就算编出一个复杂的代码,也不会很开心了,但是总想给它不断的优化和加一些功能,让它更加高端这一点还是没变的。
- 优雅、模块化、可读、简单、直观、无懈可击,这几个代码的特点每次编写完都该问问自己有没有做到,这样的代码才是艺术嘛,话说随着代码越来越难我好像已经做不太到了。
-
积极主动敲代码做到没?教材实践上有什么经验教训?
- 我都是敲了的,毕竟我记得有当堂检查代码运行这个环节,哼哼。
- 敲代码和做数学题是一个道理,看一遍觉得自己懂了,真要自己做的时候会发现有很多细节记得模棱两可,所以还是要自己敲一遍,大部分时候不敲一下还真记不住什么。
课堂项目实践
- 20180907:时间复杂度分析
- ArrayStack类的实现和测试:完成课本中ArrayStack类的实现,特别是完成peek、isEmpty、size和toString方法的实现
- 链表插入:写出链表中节点插入的操作代码
- 链表实践:链表练习,要求实现下列功能
- 第4章代码检查:运行PP28,PP28页的程序,根据个人学号输入后缀表达式并计算。
- PP4.1 LinkedStack补全:给出size、isEmpty和toString等方法的定义,以完成LinkedStack
类的实现。 - 第5章代码检查-凯撒密码:代码检查P72-P73,凯撒密码程序。
- 杨辉三角:用循环队列输出杨辉三角
- 栈队列测试题:完成第六题的分析
- 第6章代码检查 2018-1869472:运行PP6.8和PP6.11的程序
- 线性表实践 2018-1905266:用链式存储结构实现一个线性表
- 三种查找算法练习:三种查找算法练习,画出存储形式和asl的计算。
- 哈希冲突处理实践:把自己的学号加21,例如学号为1,把22添加到序列后面,使用链地址法,解决冲突。
- 树的深度和叶子个数计算:参考下面叶子节点计算的伪代码,计算课本中背部疼痛诊断器中决策树的叶子节点个数
- 中序和先序计算二叉树结构:若已知中序和先序序列,计算二叉树结构
- 堆构造与排序:根据关键字序列:36,30,18,40,32,45,22,50,构造一颗小顶堆,并排序?
- 十一链表练习:画出十一链表结构
- Dijkstra(迪杰斯特拉)算法测试:使用Dijkstra(迪杰斯特拉)算法计算单源(V1出发)最短路径。
- AOE练习:关键路径,v1和ve的值并写出具体步骤
- 哈夫曼编码测试:设有字符集:S={a,b,c,d,e,f,g,h,i,j,k,l,m,n.o.p.q,r,s,t,u,v,w,x,y,z}。
给定一个包含26个英文字母的文件,统计每个字符出现的概率,根据计算的概率构造一颗哈夫曼树。
并完成对英文文件的编码和解码。
课堂实践对提高应用能力有帮助吗?
- 当然有帮助啊,自己动手,加深记忆,找出不足。
课堂实践上自己有什么经验教训?
- 上课如果不听讲,很多补充的知识就错过了,对做课堂实践的影响很大。
课堂实践上对老师有什么教学建议?
- 能够在结束后马上讲解正确答案,不然下次上课都忘了自己本来怎么想的了。
课程收获与不足(不要抄上学期的,否则会扣分)
- 我连模板都是这个学期的,一个字没改,嘿嘿嘿,我真聪明。
自己的收获(投入,效率,效果等)
- 话说这个学期的作业好像没有上个学期写得那么难受了,效率应该是变高了吧,怎么说呢,唯手熟尔,不过这个学期的博客难道真的要水一些吗我写的,没感觉到啊我(这是不是个倒装句啊),难道我越来越怠惰了吗,如果是,我一定改,其实我课堂实践的得分倒是比上个学期高了。
自己需要改进的地方
- 和上个学期一样,代码没有注释得习惯,要用之前代码得时候我自己都不知道有些代码想干嘛,不过我发现这个真的没有养成习惯啊,不过有时候想修改原来 的代码光找位置都要画上好一会。
结对学习是不是真正贯彻了?写一下你提供的帮助或接受了什么帮助,并对老师提供参考建议
- 这。。。不知道为什么,这个学期上半个学期我和我的小伙伴甚至没有交流过几句话,话说是我自闭了还是她自闭了啊。最后的小组App倒是在疯狂交流,唉,生活所迫啊。
问卷调查
- 你平均每周投入到本课程有效学习时间有多少?
- 毕竟还是挺难的,二十多个小时无论如何都得有吧,不然怎么学的走啊,我能怎么办,我也不想被退学啊【摊手】。
- 每周的学习效率有提高吗?你是怎么衡量的?
- 这是必然的啊,人总是在进步啊,就是这么个感觉咯。【再摊手】
- 蓝墨云班课的使用对你的学习有促进吗?有什么建议和意见吗?
- 这个东西可以说是非常好用了,了解作业内容和得分,以及批改情况,看看老师发的一些视频和教学资源,帮助很大的说。
- 你觉得这门课老师应该继续做哪一件事情?
- 我是无条件赞同王老师所做的每一件事的,对没有错,都好,很OK。
- 你觉得这门课老师应该停止做哪一件事情?
- 有吗,没有啊,都对啊,不,我不是舔狗,我不是。。。话说王老师看不到这个吧,那无所谓了,就这样吧。
- 话说干脆在这里加一句学长学姐幸苦了好了,应该看得到吧,嘿嘿嘿,加个颜色好了。
给出你的总结中涉及到的链接的二维码
我以前怎么没找到这么好的二维码生成器,上个学期还贴了十几个。