算法与数据结构
文章平均质量分 79
机巧的胖子
这个作者很懒,什么都没留下…
展开
-
算法笔记(三)-排序算法的稳定性、综合排序算法、比较器、桶排序
目录排序算法的稳定性工程中的综合排序算法有关排序问题的补充:比较器更多排序算法桶排序三级目录排序算法的稳定性相同的值,会不会因为某种排序算法,相对次序被打乱,如果不会被打乱,这个排序具有稳定性,如果会被打乱,则不具备稳定性。冒泡排序可以做到稳定的,相等,不交换即可,让下一个相同值往下沉。插入排序也可以做到稳定的。相等,不交换即可,不会跑到前面以及出现的值的前面去。选择排序做不到稳定。肯定要交换的。归并排序可以做到稳定,归并时,左边右边相等,先拷贝左边即可。快速排序不能做到稳定性。堆排序不原创 2021-08-14 11:27:09 · 312 阅读 · 0 评论 -
算法笔记(二)-快速排序,桶排序
问题一:问题二:荷兰国旗问题这里写目录标题一级目录快速排序经典快排荷兰国旗问题改进快排一级目录快速排序经典快排荷兰国旗问题改进快排原创 2021-08-13 16:18:51 · 271 阅读 · 0 评论 -
c++ 对数器实现
目录对数器的作用对数器的实现代码完整代码对数器的作用对数器用于在自己的本地平台验证算法正确性,用于算法调试,无需online judge。好处:没找到线上测试的online judge,则可以使用对数器。大数据样本出错时,快速找到出错地方。贪心策略使用,直接验证是否正确对数器的实现代码首先需要有一个你想要测试的方法,本文利用归并排序算法举例。归并算法代码如下://有一个你想要测试的算法,这里以归并排序为例class Solution {public: static in原创 2021-08-12 22:39:39 · 2080 阅读 · 0 评论 -
算法笔记(一)-时间复杂度、三种简单排序、归并排序
这里写目录标题算法评价标准认识时间复杂度:排序算法:冒泡排序选择排序插入排序对数器额外空间复杂度:递归行为时间复杂度:什么是递归?递归行为时间复杂度归并排序时间复杂度小和问题和逆序对问题算法评价标准认识时间复杂度:常数时间的操作:一个操作如果和数据量没有关系,每次都是固定时间内完成的操作,叫做常数操作。时间复杂度为一个算法流程中,常数操作数量的指标。常用O(读作big O)来表示。具体的说,在常数操作数量的表达式中,只要高阶项,不要低阶项,也不要高阶项的系数,剩下部分如果记作f(N),那么时间复杂度原创 2021-08-10 11:25:18 · 259 阅读 · 0 评论