摘要: 第八章我们学习了排序,下面是我们学习的主要框架 排序分为内部排序和外部排序,我们学习的主要是上面所提及的内部排序的几种。 在分析排序时间复杂度时,不同于以往的分析,我们不仅要关注比较次数,还要关注移动次数。 (下面默认排序是按非递减) 排序 算法概述 时间复杂度 空间复杂度 算法特点 直接插入排序 阅读全文
posted @ 2020-07-12 17:04 Jadfhjva 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 第七章我们学习了查找,基本框架如下 感觉查找的方法不难理解,但是要注意很多小细节,不然可能会出错,比如在第七章作业的编程题中,一开始提交发现在DEV上运行成功但是在PTA上编译错误,PTA上提示是因为hash[]数组定义模糊(在代码中我使用hash数组来存储关键字,且定义为全局变量),后来问了同学, 阅读全文
posted @ 2020-06-27 23:10 Jadfhjva 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 第六章的大致学习框架如下: 其中,我们主要学习了图的存储结构,图的遍历,了解了图的应用里各个算法是如何实施的。 在图的存储结构中,在定义方面和之前学习的有点不一样,特别是邻接表表示法。我们要根据题目来判断应该结构体里面写什么。 对于图的遍历,感觉只是树的二叉树的遍历的升级版。不同点是二叉树的每个结点 阅读全文
posted @ 2020-06-13 13:12 Jadfhjva 阅读(175) 评论(0) 推荐(0) 编辑
摘要: 第五章的中,我们学习了树和二叉树,相比前面的内容,我感觉这部分会难一点点,特别是树的存储结构,根据不同情况会有各种存储结构,如果理解不够深刻,在后面使用这个结构体来完成代码的时候就会遇到挺多麻烦的。在这次小组合作中,我开始写的代码是这样的(我贴一下这个定义和构造树的函数),我这里是想用child指向 阅读全文
posted @ 2020-05-31 18:38 Jadfhjva 阅读(213) 评论(0) 推荐(0) 编辑
摘要: 第四章,学习了串,数组和广义表。 数组的,其实不难理解,找找规律就ok了。 在学习串的模式匹配算法的时候,BF算法,很快就看懂了,但是KMP算法有点抽象,折腾了很久。后来整理了一下,大致弄清楚了这个算法的思路,但是对于next函数的实现还是有点问题,后续会继续跟进一下。在做第四章作业的编程题里,开始 阅读全文
posted @ 2020-05-03 11:44 Jadfhjva 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 第三章学习了栈和队列,还有递归,有了前一章线性表的学习,感觉对栈和队列的理解会容易很多。栈和队列的主要区别在于其运算规则:栈是后进先出,而队列是先进先出。 下面给出栈和队列的定义以及一些基本操作 typedef struct { SElemType data[MAXSIZE]; int top;// 阅读全文
posted @ 2020-04-24 19:19 Jadfhjva 阅读(221) 评论(0) 推荐(0) 编辑
摘要: 第二章,我们学习了线性表。刚开始学习的时候,感觉挺难理解的,特别是链表,觉得还蛮抽象的。最开始做慕课上面的讨论也是错漏百出。 但是经过两次小组讨论学习以及完成PTA上的作业之后,对这些知识点还是熟练了很多。 在第二次小组合作中,我们没有通过的测试点是:删除,增加,再删除,原因是我们没有考虑到,当只增 阅读全文
posted @ 2020-04-12 22:12 Jadfhjva 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 在第一章的学习中,我们认识了什么是数据结构,什么是算法以及如何评价几个算法是否为“好”算法。与上学期C++学习不同的是,在数据结构的学习中,我们不仅要考虑是否能做出题,还要考虑如何更好地完成这道题。数据结构地学习对我们以后编程无疑会有很多积极的影响。 。在后期的学习中,给自己定个目标:希望能积极思考 阅读全文
posted @ 2020-03-21 15:28 Jadfhjva 阅读(190) 评论(0) 推荐(0) 编辑