自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 二叉堆(合并果子)

二叉堆二叉堆即是一棵完全二叉树,二叉堆有两种,一种是是最大堆,另一种是最小堆。最大堆:堆顶大于或者等于任何一个子节点的值;最小堆: 堆顶小于或者等于任何一个子节点的值。二叉堆的性质主要是可以进行插入节点、删除节点、取出值最小的节点、减小节点的值等基本操作。列题合并果子在一个果园里,达达已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆。达达决定把所有的果子合成一堆。...

2020-02-06 20:28:00 298

原创 快速乘

快速乘快速乘是一种比较高效的乘法。如果两个int型的数据相乘,有时候用unsigned long long存储也还是会出现溢出的情况,快速乘这时候就派上用场了。列题问题 A: 快速乘描述a*b%p的值格式输入格式输入a b pa,b在long long的范围内输出格式a*b%p样例样例输入 Copy2 4 3样例输出 Copy2 这题直接使用(a%p)...

2020-02-06 18:36:35 115

原创 哈希

哈希哈希公式unsigned long long Hash[n]hash[i]=hash[i−1]∗p+id(s[i])hash[i] = hash[i-1] * p + id(s[i])hash[i]=hash[i−1]∗p+id(s[i])列题很久很久以前,森林里住着一群兔子。有一天,兔子们想要研究自己的 DNA 序列。我们首先选取一个好长好长的 DNA 序列(小兔子是外星生...

2020-02-02 20:25:41 98

原创 单调栈

单调栈:单调栈是一种数据结构,它可细分为单调递增栈和单调递减栈。单调栈的伪代码for(遍历数组 ){ if( 如果栈为空或入栈元素值小于栈顶元素值 ) { 入栈 } else { while( 遍历单调栈 ) { 出栈 } }}例题一直方图是由在公共基线处对齐的一系列矩形组成的多边形。矩形具有相等的宽度,但可以具有不同的...

2020-02-02 19:35:28 73

原创 归并排序算法求逆序数

归并算法分析归并排序是一种稳定的排序且效率是比较高的,核心是分治法。归并排序即是把一个无序数列不断拆分成n个子序列,直到子序列剩余两个时,将这n个子序列排序,然后合并起来,变成一个有序数列。时间复杂度为O(nlogn)。序列1 9 8 7 5 4归并排序的步骤如图所示例如描述在一个排列中,如果一对数的前后位置与大小顺序相反,即前面的数大于后面的数,那么它们就称为一个逆序。一个排列...

2020-01-23 19:28:38 287 1

原创 并查集

并查集分析首先来了解一下什么是并查集。并查集,也称为不相交集数数据结构。在一些应用问题中,需要将n个不同的元素划分成一组不相交的集合。开始时每个元素自成一个单元素集合,然后按照一定规律将归于同一组元素的集合合并,在此过程中需要反复查询某个元素归属于哪个集合的运算,适合于描述这类问题的抽象数据类型称为并查集相信大家对树已经都初步的了解了,并查集就是运用了树的优先队列。并查集主要有三个步骤...

2020-01-23 18:11:54 114

原创 总结

总结自寒假放假,已经过了一周了。在这一周里我是该耍的耍,该学的学。之前只知道代码但不清楚原理的算法,已经掌握了,如(归并,二分,站和队列等等)也学到了些新的算法并查集。实验室所布置的每天一题和写算法博客,我全都按时完成了的,会的题就敲得快些并尽量保证一次AC,不会的题目先思考后会通过问学长、看算法书、或则看网上博客的算法来AC这个题目。如果要了解并掌握一个算法的话,我会通过书上的算法分析...

2020-01-21 20:06:59 87

原创 快速幂和快速幂取模

快速幂和快速幂取模快速幂分析快速幂求a^b用朴素算法来实现的话,做大数据的时候就会超时,时间复杂度为0(n)如果用快速幂算法来实现,就将会减少很多时间,时间复杂度为0(log⁡2N\log_2^Nlog2N​)快速幂是当b为偶数时 ab可以表示为a2的b/2次方当b为基数时ab可以表示为a2的b/2次方*a朴素代码long long int pu(int a,int b){ ...

2020-01-17 23:28:30 90

原创 尺取算法

尺取算法尺取算法即是用尺子来实现的算法。这里的尺子是刻度固定的,但长度可以随意伸缩。例给长度为n的数组和一个整数m,求总和不小于m的连续子序列的最小长。inputn=6,s=81 2 3 4 5 6outputlen=2分析i记录当前位置的下标,j记录当前序列的尾,sum记录当前序列的和,min记录满足条件的最小序列长度先找到第一个符合条件的序列用sum计算和。判断如果s...

2020-01-17 23:26:57 570

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除