反思总结对我来说就是学习中的一部分,所以我要补上昨天的。 一,昨天学了些啥? 1,快速幂。。(因为那个例题的原因实践比较充足)(递归形式) 2,归并排序及对应的求逆序对的一些东西( 1 3 6 7 i 2 3 5 6 j 这个就很水了。。虽然是所谓听了一遍但是又没有实践。。)(但是上面也没有实践啊) ...
分类:
其他好文 时间:
2019-10-04 11:11:54
阅读次数:
78
利用分治的思想,实现子排序。同时将归并的思想应用于其他问题。 一、MergeSort算法 归并排序的思路便是通过递归的思想,把一个排序问题分解为多个更小的排序问题。如对于一组序列,每次将这组序列对半分开,并分别以递归的方式对数组的前半部分和后半部分进行排序。最后通过归并动作将 ...
分类:
编程语言 时间:
2019-10-03 23:36:51
阅读次数:
92
稳定性: 稳定:冒泡排序,插入排序,归并排序、桶排序、计数排序、基数排序 非稳定:选择排序、快速排序、堆排 稳定性的优势 稳定性可保证双属性条件下,按第一个属性排序后,再按照第二个属性排序,排完后属性2相等的元素,按属性1的顺序排列。 工程中 长序列: 基础类型:快排(非稳定) 自定义属性:堆排(稳 ...
分类:
编程语言 时间:
2019-10-03 21:42:17
阅读次数:
94
描述 【题解】 让区间的长度L为1,2,4,...2^(n 1) 然后对每个位置i开始的长度为L的区间归并有序,用归并排序的方法就好,然后i跳转到i+L 复杂度仍然是log2(n) n级别的,注意写的时候的一些细节。 比如一定要让最后L =n的情况进行过一次,不然无法保证整个序列是有序的 【代码】 ...
分类:
编程语言 时间:
2019-10-03 21:34:16
阅读次数:
75
小和问题: 左边比当前元素小的元素的元素的和 暴力解法不推荐O(N^2) 归并加速 ...
分类:
编程语言 时间:
2019-10-03 19:54:55
阅读次数:
97
合归并排序需要 ,先排序,再 合并。复杂度为O(nlogn);空间复杂度为O(N)。需要额外的数组,保存复制已排序的数组到原数组中。 ...
分类:
编程语言 时间:
2019-10-03 18:10:52
阅读次数:
90
归并排序法 参考文章: https://www.cnblogs.com/chengxiao/p/6194356.html https://zh.wikipedia.org/wiki/%E5%BD%92%E5%B9%B6%E6%8E%92%E5%BA%8F 基本思想: 归并排序(MERGE-SORT) ...
分类:
编程语言 时间:
2019-10-03 14:23:15
阅读次数:
90
https://www.luogu.org/problem/P1908 沿用归并排序的思想求逆序对。 坑1:结果爆int型,需要用longlong 坑2:相对于归并排序,在比较的时候多了一个等号 举例说明归并排序解本题,例如有6个数, 36,87,99, 左区间范围是l到mid,下标用t1表示 1, ...
分类:
其他好文 时间:
2019-10-03 00:29:38
阅读次数:
116
归并排序详解百度一大把,记录一下代码,是cdq分治的基础。 ...
分类:
编程语言 时间:
2019-10-02 22:56:20
阅读次数:
99
``` !/usr/bin/python coding=UTF 8 思路:前提是此列表的必须是已经排好序的(例如:[2,4,5,7,1,3,6,8]), 分为两部分 ,从开始到中间,从中间到最后开始比较,然后进行加到列表后面,肯定有一边提前结束,结束后直接将剩余的列表加入到列表中就行 def mer ...
分类:
编程语言 时间:
2019-09-30 20:05:03
阅读次数:
87